whueuwe
2017-11-23 02:15
采纳率: 9.1%
浏览 1.2k

asp.net word转换为PDF文件报错

我想把word文档转换为PDF文件 ,我引用的是10版本的dll,到这一步
Word.ApplicationClass wordApplication = new Word.ApplicationClass();
报错:检索 COM 类工厂中 CLSID 为 {000209FF-0000-0000-C000-000000000046} 的组件失败,原因是出现以下错误: 80070005 拒绝访问。 (异常来自 HRESULT:0x80070005
这个问题我知道是配置DCOM配置,Excel和PPT幻灯片都能够在这里找到,可是word就找不到了只找到一个 Word97- 2003文档 把它配置之后,上面那个错误问题解决了,可是新的问题出现了,
wordDocument = wordApplication.Documents.Open(
ref paramSourceDocPath, ref paramMissing, ref paramMissing,
ref paramMissing, ref paramMissing, ref paramMissing,
ref paramMissing, ref paramMissing, ref paramMissing,
ref paramMissing, ref paramMissing, ref paramMissing,
ref paramMissing, ref paramMissing, ref paramMissing,
ref paramMissing);
这一句版本不兼容,有知道怎么解决的吗,怎么在DCOM配置中找到10版本的word

  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

3条回答 默认 最新

  • whueuwe 2017-11-23 02:22

    版本不兼容的错误代码是 无法将类型为“Microsoft.Office.Interop.Word.ApplicationClass”的 COM 对象强制转换为接口类型“Microsoft.Office.Interop.Word._Application”。此操作失败的原因是对 IID 为“{00020970-0000-0000-C000-000000000046}”的接口的 COM 组件调用 QueryInterface 因以下错误而失败: 加载类型库/DLL 时出错。 (异常来自 HRESULT:0x80029C4A (TYPE_E_CANTLOADLIBRARY))。

    打赏 评论
  • threenewbee 2017-11-23 02:29

    有安装正确版本的office了么?你的代码需要安装对应版本的office,还有,64位系统+32位office,需要你的.net程序也强制编译为32位。

    打赏 评论
  • whueuwe 2017-11-24 07:10

    已经解决了,没有用office自带的类库,自带的类库太麻烦了,用Aspose.Cells.dll比较简单

    打赏 评论

相关推荐 更多相似问题