我想发布一个在 Visual Basic.Net 2010 中开发的应用程序,它依赖于使用 ClickOnce 的 Com 组件。我已将 Com 对象(dll 类型的文件)的独立属性设置为 True,并且应用程序成功构建。但是,在构建的 Visual Studio 输出窗口中会弹出数十个令人讨厌的警告:
“C:\Windows\Microsoft.NET\Framework\v4.0.30319\Microsoft.Common.targets(2580,9):警告 MSB3179:隔离 COM 引用 'AXmsCtrl' 时出现问题:注册表项 'HKEY_CLASSES_ROOT\CLSID{30f256c0-ee6e-4c57 -a475-e3e81236119f}\Implemented Categories{7DD95801-9882-11CF-9FA9-00AA006C42C4}' 未导入”。
一旦应用程序安装在未注册 Com 组件的目标计算机上,它就会崩溃而死。但是,如果您使用 Regsvr32 命令手动注册所需的 Com 对象,它将像魅力一样工作。
为了解决这个问题,我尝试将高级编译器设置中的目标 CPU 从 AnyCPU 更改为 x86,但没有成功。此外,将目标框架更改为 .Net4,但也没有任何效果。
我已经走出去在网上搜索答案,但都无济于事。我想知道是否有人可以给我一个洞察力来解决这个问题。我会提前感谢这一切。