特殊なディレクトリの名前を取得する

デスクトップなど、特殊なディレクトリのパスを取得するには、SHGetSpecialFolderPath関数を使います。この関数は、Windows 98以降で使用可能です。例えば、次のようにします。
//---------------------------------------------------------------------------
AnsiString __fastcall GetDesktopDir()
{
        return GetSpecialDir(CSIDL_DESKTOPDIRECTORY);
}
//---------------------------------------------------------------------------
AnsiString __fastcall GetSpecialDir(UINT AId)
{
        TCHAR buffer[MAX_PATH] = {0};
        if(!SHGetSpecialFolderPath(NULL, buffer, AId, false)) {
                return AnsiString();
        }
        return AnsiString(buffer);
}
//---------------------------------------------------------------------------
最終更新: 2008-07-04

戻る