我有一个文件夹的pidl(可能存在或已被删除)。
我可以用下面的代码得到一个IShellItem
,但我需要的是得到这个文件夹的创建日期。我想我可以用PKEY_DateCreated
,但我不知道怎么用。
SHCreateShellItem(nil, nil, pidl, ShellItem);
我该怎么做?
我用德尔菲。
最佳答案
如果您有一个pidl,您可以使用SHGetDataFromIDList来获取对象的基本属性;您根本不需要IShellItem
(或IShellItem2
)。您可以为infoformat参数指定shgdfil_finddata(请参见SHGetDataFromIDList🕗
有关详细信息)。
这方面的好处是,对于标准文件系统对象,元数据是在pidl本身中编码的,因此即使对象不再存在,函数也将返回有用的数据。