char szPath[_MAX_PATH];
char szDrive[_MAX_DRIVE];
char szDir[_MAX_DIR];
char szFileName[_MAX_FNAME];
char szExt[_MAX_EXT];
char szOutput[_MAX_PATH * 5 + 1024];//(^^;
DWORD dwRet;
//初期化
memset(szPath, 0x00, sizeof(szPath));
memset(szDrive, 0x00, sizeof(szDrive));
memset(szDir, 0x00, sizeof(szDir));
memset(szExt, 0x00, sizeof(szExt));
memset(szOutput, 0x00, sizeof(szOutput));
dwRet = 0;
//実行中のプロセスのフルパス名を取得する
dwRet = GetModuleFileName(NULL, szPath, sizeof(szPath));
if(dwRet == 0) {
//エラー処理など(省略)
}
//フルパス名を分割する
_splitpath(szPath, szDrive, szDir, szFileName, szExt);
//出力文字列を作成
wsprintf(szOutput,"実行しているプログラムのフルパス名%s\r\nドライブ%s\r\n"
"ディレクトリ%s\r\nファイル名%s\r\n拡張子%s",
szPath, szDrive, szDir, szFileName, szExt);
//メッセージボックスで出力
MessageBox(NULL, szOutput, "こんなんでました", MB_OK);
|