我有一个文件夹的pidl(可能存在或已被删除)。
我可以用下面的代码得到一个IShellItem,但我需要的是得到这个文件夹的创建日期。我想我可以用PKEY_DateCreated,但我不知道怎么用。

SHCreateShellItem(nil, nil, pidl, ShellItem);

我该怎么做?
我用德尔菲。

最佳答案

如果您有一个pidl,您可以使用SHGetDataFromIDList来获取对象的基本属性;您根本不需要IShellItem(或IShellItem2)。您可以为infoformat参数指定shgdfil_finddata(请参见SHGetDataFromIDList🕗
有关详细信息)。
这方面的好处是,对于标准文件系统对象,元数据是在pidl本身中编码的,因此即使对象不再存在,函数也将返回有用的数据。

08-15 23:34