将我的应用程序部署到 Win7 x64 机器时出现问题。我引用了几个较旧的 32 位 dll,无法重新编译为 x64。我的开发机器是 x86,所以它们在这里工作正常。在所有运行 x64 的客户端机器中,我收到以下消息:
“类未注册(HRESULT 异常:0x80040154 (REGDB_E_CLASSNOTREG))
在 System.Windows.Forms.UnsafeNativeMethods.CoCreateInstance(Guid& clsid,对象 >punkOuter,Int32 上下文,Guid& iid)
System.Windows.Forms.AxHost.CreateWithLicense(字符串许可证,Guid clsid)
我尝试在 Visual Studio 2010 中将所有目标平台更改为 x86,但无济于事。我还尝试通过在“AppdData\Local\Apps\2.0...”安装文件夹中使用 regsvr32 在客户端计算机中注册 dll,但出现错误:“模块“Module.dll”已加载,但入口点-找不到点 DllRegisterServer。” 对于每个引用的 dll。甚至尝试使用干净的 x64 机器,但没有。
这些是冲突的 dll(与 Lead Tools 多媒体库相关):
AxInterop.LTMMLib.dll
AxInterop.MSComctlLib.dll
AxInterop.MSComDlg.dll
(与windows media player winforms控件相关):
AxInterop.WMPLib.dll
我在网上查了很多解决方案,但似乎都没有。非常感谢任何输入:)
提前致谢。