我正在为Windows 7开发某种命名空间扩展。我的扩展在所有文件和文件夹的上下文菜单中提供了一些特定于应用程序的内容。但我想以不同的方式处理文件和文件夹。有没有办法确定提供接口对象的IShellItem
是文件夹还是文件?
答案 0 :(得分:2)
您可以使用IShellItem::GetAttributes method,如下所示:
SFGAOF att = 0;
if (SUCCEEDED(pItem->GetAttributes(SFGAO_FOLDER, &att))) // pItem is a IShellItem*
{
if (att & SFGAO_FOLDER)
{
// it's a folder
}
}