1

我正在尝试使用 Al.exe 创建附属程序集。

要从.ressources文件创建程序集,我正在执行以下命令:

al.exe /c:<culture> /out:<output dll name> /embedresource: <name of the .resources file> /fileversion:3.1.5.0 /productv:3.1.5.0 /keyf:Key.snk

第一个问题:

fileversion、productv 和 keyf 是否必须与我部署的应用程序的文件版本、产品版本和密钥相同?

第二个问题:

为什么当我将生成的 DLL 部署到 GAC 时,版本列变为 0.0.0.0 ?但是当我在 GAC 中查看它们的属性时,为什么文件版本和产品版本是正确的并且版本字段是 0.0.0.0?

非常感谢你。

4

1 回答 1

0

对问题 1 的回答:

似乎文件版本、产品版本和密钥必须与部署的应用程序相同,否则卫星 Dll 将不可见,应用程序将使用默认资源 Dll。

回答问题 2:

版本为 0.0.0.0,因为这是/v使用 Al.exe 时的一个选项,除了文件和产品版本之外,还必须指定该选项。

最佳方法:

最好的方法是使用该/template选项而不是单独指定版本、文件版本和产品版本,以便新创建的程序集可以从应用程序程序集继承正确的清单。

于 2012-05-31T11:46:41.210 回答