1

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

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

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

batchFile.exe 中出现“System.InvalidCastException”类型的未处理异常

附加信息:无法将“DSOFile.OleDocumentPropertiesClass”类型的 COM 对象转换为接口类型“DSOFile._OleDocumentProperties”。此操作失败,因为 IID 为“{58968145-CF01-4341-995F-2EE093F6ABA3}”的接口的 COM 组件上的 QueryInterface 调用因以下错误而失败:不支持此类接口(来自 HRESULT 的异常:0x80004002 (E_NOINTERFACE)) .

然后在执行该行时更改类型,filedynamic无法添加或查看与文件关联的属性,所有属性都显示函数评估需要所有线程运行。 那就是代码将如下所示:

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

这是我在调试时观察变量时发生的图像:

在此处输入图像描述

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

4

0 回答 0