无法添加自定义属性 - 需要修复

时间:2016-08-10 05:23:13

标签: c# .net comobject dsofile

我使用DSOFile使用以下代码将自定义属性写入文件:

DSOFile.OleDocumentProperties file = new DSOFile.OleDocumentProperties(); 
file.Open(@"C:\More_info.docx",false,DSOFile.dsoFileOpenOptions.dsoOptionDefault);
  

但是在运行代码时它会给我以下错误:

     

未处理的类型' System.InvalidCastException'发生了   在batchFile.exe中

     

附加信息:无法转换类型的COM对象   ' DSOFile.OleDocumentPropertiesClass'到界面类型   ' DSOFile._OleDocumentProperties&#39 ;.此操作失败,因为   QueryInterface在具有IID的接口的COM组件上调用   ' {58968145-CF01-4341-995F-2EE093F6ABA3}'由于以下原因而失败   错误:不支持此类接口(HRESULT异常:0x80004002   (E_NOINTERFACE))。

然后将file的类型更改为dynamic它执行该行,但无法添加或查看与该文件关联的属性,所有属性都显示功能评估需要所有线程跑。 那就是代码看起来像这样:

dynamic myFile = new DSOFile.OleDocumentProperties();
file.Open(@"C:\More_info.docx",false,DSOFile.dsoFileOpenOptions.dsoOptionDefault);

以下是我在调试时观察变量时发生的情况:

enter image description here

我做错了什么?任何建议将不胜感激。

0 个答案:

没有答案