이 때 쉽게 사용하는 함수는 물론 GetCurrentDirectory()다.
TCHAR szFolder[MAX_PATH] = "";
::GetCurrentDirectory(MAX_PATH - 1, szFolder);
CString csFolder(szFolder);
그런데, 이 함수는 정확히는 현재 폴더를 읽어오는 것이지, 실행파일이 있는 폴더를 읽는 것이 아니다.
실행파일이 있는 폴더의 위치를 읽어오려면 아래와 같이 GetModuleFileName() 함수를 응용해서 활용해야 한다.
CString csFolder;
GetModuleFileName(NULL, csFolder.GetBuffer(_MAX_PATH), _MAX_PATH);
csFolder.ReleaseBuffer();
csFolder = csFolder.Left(csFolder.ReverseFind(_TCHAR('\\')));
알려질만큼 알려졌지만, 생각난 김에 슬쩍 포스팀.
댓글 없음:
댓글 쓰기