gpt4 book ai didi

c# - 如何使用 IpropertyStorage 读取文件的属性?

转载 作者:太空宇宙 更新时间:2023-11-03 11:50:22 25 4
gpt4 key购买 nike

如何使用 iPropertyStorage 读取文件的属性(如标题、作者、页数等)?任何人都知道 C# 中的代码,请发布它

其实,

我正在尝试以编程方式(使用 c#)读取文件属性(标题、摘要、作者、评论等......当您看到文件的属性时显示在“摘要”选项卡上的内容)。

FileInfo 和 FileSystemInfo 类仅公开标准属性(创建时间、修改时间等),因此我正在尝试使用 ipropertyStorage。任何知道解决方案的人都会有帮助。

最佳答案

像这样的 Shell 编程总是很难做到。不过,您在这方面有机会,shell32.dll 有一个可从 COM 客户端调用的自动化接口(interface)。 ShellFolderItem::ExtendedProperty 属性使它们可用。您将需要一个 WPF 或 Windows 窗体项目,以便正确初始化 COM。使用项目 + 添加引用,浏览选项卡,选择 c:\windows\system32\shell32.dll。此示例代码读取 c:\temp\test.txt 文件的 Author 属性:

  Shell32.Shell shl = new Shell32.ShellClass();
Shell32.Folder dir = shl.NameSpace(@"c:\temp");
Shell32.FolderItem itm = dir.Items().Item("test.txt");
Shell32.ShellFolderItem itm2 = (Shell32.ShellFolderItem)itm;
string prop = (string)itm2.ExtendedProperty("{F29F85E0-4FF9-1068-AB91-08002B27B3D9} 4");
Console.WriteLine(prop);

您可以使用的属性 ID (PID) 值记录在此 SDK article 中.

关于c# - 如何使用 IpropertyStorage 读取文件的属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2265759/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com