另一个人在这里描述了我的问题http://www.experts-exchange.com/Programming/Installation/Q_28093898.html。我只是复制了文本。
我在 VisualStudio 2010 中创建了一个 .net 程序集,并包含了一个安装和部署项目,该项目将程序集安装到 GAC 中。但是,我想让它成为 COM 可调用的,因此我选择了 vsdrpCOM 作为安装程序项目中的程序集。但是,当我运行安装程序时,程序集没有注册 COM。如果我手动注册它,它可以工作,所以组装没有问题。有人知道出了什么问题吗?
更新:
现在我有更多关于这个问题的事实。在我的项目中,我在 Register 属性中选择vsdrpCom,在 Folder 属性中选择 Global Assembly Cache。这样做后,我的 ActiveX 无法正常工作。 但是当我在 Register 属性中选择vsdrpDoNotRegister并在 Folder 属性中选择 Global Assembly Cache 时,安装后我使用 RegAsm 注册我的 ActiveX 控件。然后一切正常。