我们有一个用C#编写的WinForms应用程序,它使用AxAcroPDFLib.AxAcroPDF组件加载和打印PDF文件。在Windows XP中一直没有任何问题。我已经将开发环境移至Vista 64位,并且除非删除AxAcroPDF组件,否则该应用程序将无法运行(在Vista 64上)。应用程序运行时出现以下错误:
“System.Runtime.InteropServices.COMException:
未注册类(HRESULT的异常:0x80040154(REGDB_E_CLASSNOTREG))。”
在Adobe论坛上,我被告知该错误的原因是它们没有64位版本的AxAcroPDF ActiveX控件。
有什么办法可以解决这个问题?例如,我可以自己将32位ActiveX控件转换为64位控件吗?
最佳答案
您不能自己将Adobe的ActiveX控件转换为64位,但是可以通过将平台目标设置为x86来强制应用程序以32位模式运行。
有关您的Visual Studio版本的说明,请参见Issues When Using Microsoft Visual Studio 2005的1.44部分
关于64-bit - AxAcroPDF-Vista64类未注册错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67167/