每次更改用户应用程序时,都需要将程序集重新部署到GAC中
所以基本上我们有一个强名称(强烈签名)程序集x.dll,它由我们的一个组件App.exe使用。程序集的签名密钥位于我们的存储库中,程序集通过写入方式进行签名
[assembly: AssemblyDelaySign(false)]
[assembly: AssemblyKeyFileAttribute(@"....xxx.snk")]
[assembly: AssemblyKeyName("")]
组件应该由安装公共软件包的安装程序放入GAC,我们将其命名为common.msi。但是我们的组件本身是由App.msi安装的。一起部署时,一切正常。但是当对App.msi进行更改时,那些绝对与x.dll无关,并且重新部署了App.msi,App.exe无法找到x.dll。请注意,没有对x.dll进行更改。然而,当部署common.msi时,一切都有效。所以我猜测必须存在构建版本或某些东西的问题,或者我对此一无所知的清单。有什么明显的东西我做错了吗?是不是可以单独部署组件而不是触摸它,除非它被更改,并且每次使用它的组件发生更改时都不重新部署它?谢谢。
编辑:这是一个要求(我无法做任何事情)将该组件放入GAC
没有找到相关结果
已邀请:
1 个回复
旗低饶彤
您可以在App.exe和x.dll上运行此工具,以确定嵌入到每个程序集中的确切强名称,包括版本号。 这可能有助于您深入了解为什么事情没有按预期发挥作用。 即使GAC中有一个版本的x.dll,也不需要像App.exe这样的任意应用程序来使用该版本的DLL。该应用程序可以在本地目录中安装自己的dll版本。