1

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

故事是安装包将所有依赖程序集复制到加载项的安装文件夹中。

例如,COM 加载项依赖于 Microsoft.Office.Interop.Outlook.dll 程序集。所以安装包将它复制到它的文件夹:)

当然,我可以将 Microsoft.Office.Interop.Outlook.dll 依赖项的 Exclude 属性切换为 True,这将防止程序集被复制。但是,我需要实现以下行为:

  • 如果 Microsoft.Office.Interop.Outlook.dll 不在 GAC 中,我们只需将其复制到加载项的安装文件夹
  • 否则,使用 GAC 中的那个

请建议 ti 可以在 .Net2.0 中完成的方式?一步一步的指南将不胜感激。

4

1 回答 1

2

只需始终将其复制到文件夹中。如果它已经在 GAC 中,那么无论如何都会首先使用 GAC 的程序集。

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

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

于 2008-12-21T17:47:35.923 回答