/*
GetAppPath
実行中のアプリケーションのあるフォルダを取得
引数
path = パスを受け取る配列のポインタ
size = path のサイズ
戻り値
成功時 = TRUE / 失敗時 = FALSE
*/
BOOL GetAppPath( LPCSTR path, DWORD size )
{
//アプリケーションのパス取得
if( !GetModuleFileName( NULL, path, size ) return FALSE;
char new_path[MAX_PATH];
DWORD i, length = lstrlen( path ), bs_pos = 0;
//パスの一番最後にある \ の位置を調べる
for( i = length; i > 0; i-- )
if( path[i] == '\\' ){ bs_pos = i; break; }
//\までのパスをコピー(\も含む)
CopyMemory( new_path, path, pos + 1 );
//文字の終端を設定
new_path[ pos + 1 ] = '\0';
//新しく作ったパスを path に戻す
wsprintf( path, "%s", new_path );
return TRUE;
}
|