c# - 创 build 置 (MSI) 以注册(regasm)程序集

标签 c# com gac

我正在使用 .NET 为 IE 开发工具栏。目前,我使用 gacutil 插入我的 .NET 程序集,并使用 regasm 注册我的 COM 程序集。

我想为项目创建一个设置 (MSI),但我似乎无法注册类型。我在安装项目的 GAC 文件夹中拥有所有内容,但我找不到本质上运行 regasm 的方法 - 我不想将它包含在项目中。/regfile 选项与注册类型不同。

我尝试使用 tlbexp 导出 .tlb 文件并将其包含在 MSI 的应用程序文件夹中,但它似乎无法解决问题。如果运行 MSI 安装程序并在我的程序集上手动运行 regasm,everytihng 工作正常。有什么想法吗?

谢谢。

最佳答案

据此:

http://www.codeproject.com/KB/cs/C__Deployment.aspx?fid=439178

在安装项目中添加的输出文件的属性中,确保将注册属性设置为 vsdrpCOM。设置此属性可确保 MSI 文件使用 .NET 中的 regasm 工具注册 ActiveX 组件。在安装期间,安装程序本身负责注册此 C# 组件以公开 COM 接口(interface)。

关于c# - 创 build 置 (MSI) 以注册(regasm)程序集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1121165/

相关文章:

c# - 在 C# 中从 XML 添加/删除元素

c# - 在 MVVM 中对绑定(bind)到 DataGrid 的 ObservableCollection 进行排序

c# - 在asp.net框架中等效于Ihostedservice的后台任务

c++ - 触发 COM 事件时调用 Lock()/Unlock() 的目的是什么?

c# - .NET 互操作层和 COM 之间发生了什么?

c# - System.IO.IOException 错误,无法访问文件

c++ - UpdateRegistry编译错误

c# - 从 (GAC) 类库初始化 Automapper

c# - Windows XP/Server 2003/VS 2010 上的 CefSharp

gac - regsvr32 和 GAC 有什么区别?