먹고 사는 일/VC++

레지스트리 등록

니카루스 2010. 2. 17. 11:07
프로그램의 실행경로를 아는 방법에는
1. 프로그램이 실행되면서 자신의 경로를 레지스트에 등록한다.
2. GetModuleHandle함수를 사용한다.
3. 기타

여기서는 2번째 방법을 설명하고 있습니다.

필요할때 사용하세요

CString getAppPath()
{
HMODULE hModule;
hModule = ::GetModuleHandle(NULL); // handle of current module
ASSERT(hModule != 0);

CString strExeFileName;
VERIFY(::GetModuleFileName(hModule, strExeFileName.GetBuffer(_MAX_PATH),
_MAX_PATH));
strExeFileName.ReleaseBuffer();

char Drive[_MAX_DRIVE];
char Path[_MAX_PATH];
char Filename[_MAX_FNAME];
char Ext[_MAX_EXT];
_splitpath(strExeFileName, Drive, Path, Filename, Ext);

return CString(Drive)+CString(Path); // has trailing backslash
}

출처 : Tong - 공원님의 ┣ ★ 먹고사는일(VC++)통