使用Visual Studio安装项目自动注册和GAC COM Interop DLL

时间:2010-06-21 17:48:12

标签: .net interop gac setup-project regasm

我为COM互操作创建了一个.NET程序集,它在我的开发机器上运行良好。我目前正试图弄清楚如何使用Visual Studio的“安装项目”将DLL部署到目标机器。如何使用VIsual Studio安装项目执行以下操作:

  • 注册程序集(当前使用regasm)。
    • 需要成功注册程序集,类型库(.tlb)需要成功注册
    • This answer建议废弃regasm以支持自定义代码。我这是个好主意?如果是这样,该代码如何包含在安装项目中?
    • This answer建议使用/regfile的{​​{1}}命令,然后使用安装项目中注册表中的导入工具。这会有用吗?
  • 在GAC中安装程序集(当前使用regasm
    • 我知道“目标计算机上的文件系统”中的“全局程序集缓存文件夹”。在将程序集包含在安装项目中时,我需要做些什么特别的事情吗?

非常感谢任何其他建议或疑虑。

1 个答案:

答案 0 :(得分:34)

目标计算机上将无法使用Gacutil.exe。没问题,MSI可以完成工作。右键单击“目标计算机上的文件系统”,添加,GAC。右键单击添加的文件夹,添加,项目输出。这确保了组件的清洁。

它也可以像Regasm.exe那样注册程序集。将项目输出引用的Register属性设置为vsdrpCOM。