如何在c#中读取自定义文件属性

Ran*_*age 7 c# properties file

我正在寻找一种在C#中读取文档属性的方法.我听说过dsofile.dll,但它似乎是一个旧的COM包装器,并且想知道.NET框架/ C#是否有更现代的东西.我实际阅读的不是Office文档文件,而是具有自定义属性的Solidworks .SLDDRW文件.您可以在Windows资源管理器中通过右键单击该文件来查看和更改这些内容,然后转到"属性"窗口的"自定义"选项卡.

任何人都知道如何在C#/ .NET 3.5中阅读这些自定义属性?

谢谢!

Mik*_*ton 6

SolidWorks系统使用OLE文档属性API.正如您所指出的,Microsoft提供了一个示例DSOFile.dll,允许您访问这些属性:

http://support.microsoft.com/kb/224351

SolidWorks API还对这些属性提供了强大的支持,但您必须加载Solidworks才能使用API​​,因此它并不总是理想的解决方案.请注意,如果文件已在Solidworks中打开,则无法使用DSOfile.dll编辑自定义属性.

对您的问题的简单回答是,没有针对这些属性的更新API; 与许多其他遗留API(例如DDE)继续出现在生产环境中的方式大致相同,DSOFile非常适合需要,并且由于其相当低级的特性,实际上并不完全适合更新.然而,DSOFile完全能够满足您的需求,并且与.NET相当干净.源是可用的,如果这对您的用户来说是个问题,可以编译为64位; 它确实意味着你需要一个单独的64位安装,但这是一个很小的代价(加上SolidWorks开始时并不完全是跨位的).


Dir*_*mar 1

如果我理解正确的话,这个帖子可以给你答案:

\n\n

读/写 \xe2\x80\x98Extended\xe2\x80\x99 文件属性 (C#)

\n