佚名通过本文主要向大家介绍了
SHGetKnownFolderItem等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
问题: SHGetKnownFolderItem
描述:
{
HRESULT hr = S_OK;
UINT itemCount;
// Walk the Pictures library
IShellItem *pShellItemPicturesLibrary;
hr = SHGetKnownFolderItem(
FOLDERID_PicturesLibrary,
KF_FLAG_CREATE,
NULL,
IID_PPV_ARGS(&pShellItemPicturesLibrary)
);
if (SUCCEEDED(hr))
{
INamespaceWalk *pNamespaceWalk;
hr = CoCreateInstance(
CLSID_NamespaceWalker,
NULL,
CLSCTX_INPROC,
IID_PPV_ARGS(&pNamespaceWalk)
);
if (SUCCEEDED(hr))
{
hr = pNamespaceWalk->Walk(
pShellItemPicturesLibrary,
NSWF_NONE_IMPLIES_ALL,
1,
NULL
);
if (SUCCEEDED(hr))
{
// Retrieve the array of PIDLs gathered in the walk
hr = pNamespaceWalk->GetIDArrayResult(
&itemCount,
ppidls
);
}
pNamespaceWalk->Release();
}
pShellItemPicturesLibrary->Release();
}
return itemCount;
}
我要找我自己的文件夹,SHGetKnownFolderItem这个是找win7系统下默认的一些文件夹,我想知道那么一个API,传一个path进去,找到这个path下的文件,多谢啦, 哦,说下,我那天在msdn上看到了,可以,但是我没保存,现在找不到了。
描述:
本帖最后由 hujianping89 于 2012-07-03 12:01:35 编辑
FindImagesPIDList(PIDLIST_ABSOLUTE** ppidls){
HRESULT hr = S_OK;
UINT itemCount;
// Walk the Pictures library
IShellItem *pShellItemPicturesLibrary;
hr = SHGetKnownFolderItem(
FOLDERID_PicturesLibrary,
KF_FLAG_CREATE,
NULL,
IID_PPV_ARGS(&pShellItemPicturesLibrary)
);
if (SUCCEEDED(hr))
{
INamespaceWalk *pNamespaceWalk;
hr = CoCreateInstance(
CLSID_NamespaceWalker,
NULL,
CLSCTX_INPROC,
IID_PPV_ARGS(&pNamespaceWalk)
);
if (SUCCEEDED(hr))
{
hr = pNamespaceWalk->Walk(
pShellItemPicturesLibrary,
NSWF_NONE_IMPLIES_ALL,
1,
NULL
);
if (SUCCEEDED(hr))
{
// Retrieve the array of PIDLs gathered in the walk
hr = pNamespaceWalk->GetIDArrayResult(
&itemCount,
ppidls
);
}
pNamespaceWalk->Release();
}
pShellItemPicturesLibrary->Release();
}
return itemCount;
}
我要找我自己的文件夹,SHGetKnownFolderItem这个是找win7系统下默认的一些文件夹,我想知道那么一个API,传一个path进去,找到这个path下的文件,多谢啦, 哦,说下,我那天在msdn上看到了,可以,但是我没保存,现在找不到了。