シェルアイテムがファイルシステムかどうかを調査

(2004.04.22)
    // ファイルシステムかどうか
    static bool IsFileSystem(IShellFolderPtr spShellFolder, LPCITEMIDLIST pidl)
    {
        if (spShellFolder == NULL)
        {
            ATLASSERT(0);
            return false;
        }
 
        HRESULT hr = S_OK;
 
        SFGAOF sfgao = SFGAO_FILESYSTEM;
        hr = spShellFolder->GetAttributesOf(1, (LPCITEMIDLIST*)&pidl, &sfgao);
        if (FAILED(hr))
        {
            return false;
        }
 
        if (sfgao & SFGAO_FILESYSTEM)
        {
            return true;
        }
 
        return false;
    }
一覧に戻る
© 2003 WAC.com All Right Reserved.