- 2011-3-24
- Visual C++
実行中プロセスのディレクトリ取得
{
char szTemp [_MAX_PATH];
char szDrive [_MAX_DRIVE];
char szDir [_MAX_DIR];
char szFname [_MAX_FNAME];
char szExt [_MAX_EXT];
::GetModuleFileName( NULL, szTemp, sizeof (szTemp) );//現在実行中のモジュールのフルパス取得
_splitpath(szTemp, szDrive, szDir, szFname, szExt); //フルパスを分解
::ZeroMemory(szTemp , _MAX_PATH );
_makepath( &szTemp , szDrive, szDir, NULL, NULL ); //カレントディレクトリまで結合
}
または、
BOOL PathRemoveFileSpec(LPTSTR Path);//パスからファイル名のみ取り除く
{
char szTemp [_MAX_PATH];
::GetModuleFileName( NULL, szTemp, sizeof (szTemp) );//現在実行中のモジュールのフルパス取得
::PathRemoveFileSpec(szTemp);//ファイル名を取り除く
※::PathRemoveFileSpecは shlwapi.h をインクルードする。
}