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

问题描述 投票:27回答:1

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

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

任何其他建议或关注将不胜感激。

.net interop gac setup-project regasm
1个回答
34
投票

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

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

© www.soinside.com 2019 - 2024. All rights reserved.