[winAPI]GetModuleFileName 함수
레퍼런스/API 2013. 9. 2. 11:30 |GetModuleFileName 함수는 현재 실행되고 있는 프로세스의 이름을 얻어오는 함수이다.
MSDN에 정의된 GetModuleFileName API
DWORD WINAPI GetModuleFileName( _In_opt_ HMODULE hModule, _Out_ LPTSTR lpFilename, _In_ DWORD nSize );
첫 번째 인자는 이름을 얻어올 프로세스의 핸들이지만, 보통 자신의 이름을 얻기 위해 사용되므로
NULL로 사용되는 경우가 대부분이다. 첫 번째 인자에 NULL을 넣어 사용하면 현재 자신의 이름을 얻어오고
그 외 다른 프로세스의 핸들을 전달하거나 DLL파일의 핸들을 전달하면 해당 모듈의 파일 이름을 얻어온다.
두 번째 인자는 해당 모듈의 이름이 입력될 버퍼를 넣어주면 되고
세 번째 인자는 버퍼의 사이즈를 넣어주면 된다. (이런 사이즈인수는 대부분 버퍼오버플로우 공격을 하지 못하도록 하기 위함이라고 보면 된다. 그외 오버 플로우로 인한 버그의 소지도 예방할 수 있음.)
'레퍼런스 > API' 카테고리의 다른 글
[JSP] java.lang.NoClassDefFoundError: javax/el/ELResolver 에러 (0) | 2013.12.17 |
---|---|
[winAPI] ReadProcessMemory (1) | 2013.09.14 |
[winAPI] ProcessToken, AccessToken (0) | 2013.09.12 |
[winAPI] DllMain 정의 (0) | 2013.09.02 |
[winAPI] ListBox 여러개 삭제, 멀티 셀렉트 삭제 (0) | 2012.05.30 |