【问题标题】:Is there a correct way to get file details in windows since GetDetailsOf column numbering changes between OS releases?由于操作系统版本之间的 GetDetailsOf 列编号发生变化,是否有正确的方法在 Windows 中获取文件详细信息?
【发布时间】:2025-12-22 07:20:17
【问题描述】:

我们一直在使用 Shell32 Folder.GetDetailsOf(folderItem, column) 来获取不同文件的文件详细信息和扩展文件详细信息。不幸的是,这在操作系统版本之间中断,因为列编号发生了变化,从this code example (no relation to our project) 可以看出。

我似乎找不到正确的方法来获取不会轻易破坏的扩展文件详细信息,并且无法(非hackily)找到正确的列编号。那么问题来了,这是如何以正确的方式完成的呢?

(编辑:更具体地说,我们读出的信息是音频、视频和图像信息,例如大小、fps、比特率等。)

【问题讨论】:

    标签: windows shell32 file-properties


    【解决方案1】:

    使用FolderItem2.ExtendedProperty 获取您想要的属性。请参阅this answer,尽管这个答案很难(通过 fmtid)。更简单的是使用规范名称“System.Author”而不是丑陋的 GUID。

    【讨论】:

    最近更新 更多