소스코드
CHAR sProcessName[MAX_PATH] = {0,};
DWORD nSize = sizeof(CHAR)*MAX_PATH;;
DWORD nLen = 0;
HANDLE hProcess = GetCurrentProcess();
ZeroMemory(sProcessName, nSize);
if( QueryFullProcessImageName(hProcess, 0, sProcessName, &nSize) ){
TRACE("QueryFullProcessImageName : %s\n", sProcessName);
}
ZeroMemory(sProcessName, nSize);
if( (nLen =GetModuleFileName(NULL, sProcessName, sizeof(sProcessName))) > 0 ){
sProcessName[nLen] = 0;
TRACE("GetModuleFileName : %s\n", sProcessName);
}
ZeroMemory(sProcessName, nSize);
if( (nLen =GetModuleFileNameEx(hProcess, NULL, sProcessName, sizeof(sProcessName))) > 0 ){
sProcessName[nLen] = 0;
TRACE("GetModuleFileNameEx : %s\n", sProcessName);
}
ZeroMemory(sProcessName, nSize);
if( (nLen =GetProcessImageFileName(hProcess, sProcessName, sizeof(sProcessName))) > 0 ){
sProcessName[nLen] = 0;
TRACE("GetProcessImageFileName : %s\n", sProcessName);
}
실행결과
QueryFullProcessImageName : D:\My Project\ProcessInfo\Debug\ProcessInfo.exe
GetModuleFileName : d:\My Project\ProcessInfo\Debug\ProcessInfo.exe
GetModuleFileNameEx : d:\My Project\ProcessInfo\Debug\ProcessInfo.exe
GetProcessImageFileName : \Device\HarddiskVolume1\My Project\ProcessInfo\Debug\ProcessInfo.exe
GetModuleFileName : d:\My Project\ProcessInfo\Debug\ProcessInfo.exe
GetModuleFileNameEx : d:\My Project\ProcessInfo\Debug\ProcessInfo.exe
GetProcessImageFileName : \Device\HarddiskVolume1\My Project\ProcessInfo\Debug\ProcessInfo.exe
"프로그래밍 / Visual C" 분류의 다른 글
| [MFC] HttpOpenRequest 이용시 0xC0000005: 0xcccccccc 오류 (0) | 2014/03/04 |
| [MFC] modal dialog(모달 대화상자) 숨긴채로 시작하기 (0) | 2014/03/04 |
| [MFC] OpenSSL Visual Studio 2008에서 컴파일 및 설치 하기 (0) | 2009/05/11 |
| [MFC] Visual Studio 2008에서 zlib 1.2.3 컴파일 (0) | 2009/04/21 |
| IE8설치후 VS2008 스크립트 오류 문제 (4) | 2009/03/31 |
| 데이크스트라 알고리즘(Dijkstra algorithm) (2) | 2008/12/29 |
| Microsoft Office 2007 연동 (1) | 2008/06/04 |
| GDI+에서 Round Rectangle 그리기. (0) | 2008/03/14 |
| VC macro __FUNCTION__ UNICODE에서 사용하기 (0) | 2008/03/14 |
| MulDiv (0) | 2007/12/12 |