【问题标题】:Visual c# Express Edition - can't get Acrobat pdf reader to workVisual c# Express Edition - 无法让 Acrobat pdf 阅读器工作
【发布时间】:2011-01-05 00:11:14
【问题描述】:

我正在尝试在 Visual C# 2008 Express Edition 项目中使用 Acrobat Inter Application Communication (IAC) 打开 C# 应用程序中的 PDF 文档。
执行以下代码时出现异常:

CAcroPDDoc pdDoc = new AcroPDDocClass();  

异常报告特定 CLSID 的 COM 类工厂失败并出现错误 80040154。在 MSDN 上的 winerror.h 中查找错误代码,该错误与未注册的类有关。
我尝试使用 regsvr32 注册 Interop.Acrobat.dll 但这无法正常工作(找不到入口点 DllRegisterServer)。
我已经尝试了 Acrobat 9 SDK 附带的示例 C# 项目(BasicIacCS - 有一个名为 BasicIacCS.suo 的 Visual Studio 项目,它导入到 c# Express 中没有任何错误,但由于相同的异常而失败)。


我犯了一些根本性的错误吗? (我是 Windows/.NET 编程新手)
这在 express 版本下是否可行,还是我应该升级到 Visual Studio?


进一步研究问题,当我对我的应用程序(.exe 文件)执行 ILDASM 时,所抱怨的 CLSID 可用 - 这是我尝试访问的 AcroPDDoc 类的 CLSID。注册表中不存在此类及其关联的 CLSID。 我只安装了 Acrobat 阅读器 - 不是完整版。访问 COM 接口是否需要完整版的 Acrobat? (我只有 Acrord32.dll,系统上没有 Acrobat.dll)。 我在不同的 Vista 机器上试用了相同的程序,并卸载/重新安装了 Arobat 阅读器,结果相同。

【问题讨论】:

  • 我想你在acrobat reader之前已经安装了VS。

标签: c# pdf clsid


【解决方案1】:

问题可能在于未注册主 Acrobat dll,而不是 interop dll。

尝试重新安装 Acrobat,或注册 acrobat DLL。

【讨论】:

  • 谢谢,我会在另一台机器上试试这个。我当前运行的机器使用了一些奇怪的应用程序安装程序,所以我无法卸载 Acrobat 并尝试重新安装!我认为 Acrobat 的安装没有经过充分考虑,很可能是我遇到的所有问题的原因:-(
猜你喜欢
  • 1970-01-01
  • 2018-06-16
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多