将“程序集”部署到GAC的“官方”方式?

时间:2009-06-09 08:36:37

标签: .net deployment gac

我只是想知道 - 如果我需要将一个程序集部署到GAC中,那么“官方”的方式是什么?

目前我们要么手动拖放到c:\ windows \ assembly文件夹中,要么使用gacutil.exe。第一种方式显然不是好方法(毕竟是手动过程),gacutil是SDK的一部分,在生产服务器上默认不可用。

是否有任何Microsoft部署指南?

6 个答案:

答案 0 :(得分:8)

到目前为止,最简单的方法是使用安装项目。在那里,您只需将项目输出中的程序集添加到特殊的GAC文件夹中,安装程序就会将它们添加到GAC中。

答案 1 :(得分:1)

如果您没有使用现有的安装程序技术,那么“官方”方式是通过IAssemblyCache :: InstallAssembly本机API。但是可以在System.EnterpriseServices.Internal命名空间中找到托管替代方法。尽管名称如此,它实际上是标准装配中的公共类。

Publish.GacInstall

答案 2 :(得分:1)

试试这个:

示例托管GAC API Wrappers http://blogs.msdn.com/junfeng/articles/229649.aspx

答案 3 :(得分:0)

另一个选择是使用 InnoSetup 等工具。

答案 4 :(得分:0)

根据 Install Shield 的网站:

  

InstallShield 2011:微软   安装解决方案的选择   Visual Studio 2010应用程序

  • 于2011年12月12日检索

答案 5 :(得分:0)

我用来构建可自动化的安装程序的工具是Wix。我们为试用版,完整版以及我们必须管理的许多不同产品提供了不同的安装程序。 Wix能够为我们做出一切可管理的事情。 Wix的工作方式是您在Xml文件中描述所有内容。其中一个好处是您可以将XML保持在源代码控制之下。

以下是一些关于如何使用Wix将dll部署到GAC和本地的博客文章: