我想发布一个在VisualBasic.Net 2010中开发的应用程序,它依赖于使用ClickOnce.I的Com组件。我已经将Com对象的隔离属性(dll类型的文件)设置为True,并且应用程序生成了successfully.However,在构建时的Visual输出窗口中会弹出数十个令人讨厌的警告:
"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组件的目标计算机上,它就会崩溃到death.But,如果您使用Regsvr32命令手动注册所需的Com对象,它将像一个魅力一样工作。
为了解决这个问题,我尝试将高级编译器设置中的目标CPU从x86更改为AnyCPU,但这并没有改变work.Also,而是将目标框架更改为.Net4,但也没有起到任何作用。
我已经在网上搜索了答案,但都没有用。我想知道是否有人能给我一个洞察力来解决这个问题,我会很感激的。
发布于 2012-05-16 11:26:36
我过去曾使用reg来使用ClickOnce交付COM组件。请参阅这篇msdn文章
发布于 2012-05-17 19:23:11
我在MSDN上发布了同样的问题,我发现一个非常有用的答案如下:
MSB3179:隔离COM引用的问题“程序集”:“错误”。这是一条通用错误消息,指示应用程序清单中RegFree COM >条目的生成问题(如IsolatedComReferences任务参数所指定)。错误消息的后半部分包含关于问题的>性质的更多信息。造成此错误的一个可能原因是RegFree COM组件>未在生成计算机上正确注册。
要进一步了解这个问题,请参阅MSDN社区给出的答案,单击此处
https://stackoverflow.com/questions/10605604
复制相似问题