2012-05-15 68 views
1

我想发布一个在Visual Basic.Net 2010中开发的应用程序,它依赖于使用ClickOnce的Com组件。我设置了Com对象的Isolated属性(dll类文件)为True,并且应用程序构建成功。但是,在Visual Studio输出窗口中弹出几十条令人讨厌的警告,其内容如下:问题使用ClickOnce部署COM组件

“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对象,它将以类似于魅力。

为了解决这个问题,我试着将Advance Compiler Settings中的目标CPU从AnyCPU更改为x86,但是没有工作。并且,将目标框架更改为.Net4,但是也没有做任何事情。

我已经走出了搜寻网络的答案,但都无济于事。我想知道有没有人能给我一个洞见,让这个固定。我很感激这一切提前。

回答

0

我在过去使用过reg的COM组件来使用ClickOnce来提供COM组件。见this msdn article

+0

您好,感谢您的answer.You看,我知道如何使用ClickOnce这是设置隔离发布的COM组件他们的属性为True,但问题是为什么我在Output窗口中看到警告? –

0

我张贴同样的问题在MSDN和一个答案,我发现非常有用的结果如下:

MSB3179:问题隔离COM引用“集结号”:“错误”。 这是一般性错误消息,指示在应用程序清单中生成RegFree COM>条目时出现问题(由 IsolatedComReferences 任务参数指定)。错误消息的后半部分包含有关该问题性质的更多信息。此错误的一个可能的原因是RegFree COM组件在生成计算机上未正确注册。

要遵循这一问题进一步看到在MSDN社区给出的答案,Click Here