代码之家  ›  专栏  ›  技术社区  ›  Mik Kardash

如何:复制依赖程序集以防它不在GAC中?

  •  1
  • Mik Kardash  · 技术社区  · 17 年前

    我正在使用VS2008构建安装程序包。这是安装用于Outlook的COM加载项应用程序的常规安装程序包。到目前为止,它工作正常。但是我需要改进一下…

    故事是,安装包将所有依赖程序集复制到外接程序的安装文件夹中。

    例如,COM加载项依赖于microsoft.office.interop.outlook.dll程序集。因此安装包将其复制到其“文件夹:)

    当然,我可以将microsoft.office.interop.outlook.dll依赖项的exclude属性切换为true,这将阻止复制程序集。但是,我需要实现以下行为:

    • 如果Microsoft.Office.Interop.Outlook.dll不在GAC中,我们只需将其复制到外接程序的安装文件夹中。
    • 否则,使用GAC中的一个

    请建议如何在.net2.0中完成ti? 一个循序渐进的指导将是非常感谢。

    1 回复  |  直到 17 年前
        1
  •  2
  •   Greg Dean    17 年前

    只需将其复制到文件夹。如果已经在GAC中,GAC的装配将首先使用。

    换句话说,运行时首先检查GAC。然后,检查应用程序库等。

    http://msdn.microsoft.com/en-us/library/yx7xezcf(VS.71).aspx

    推荐文章