【问题标题】:Creating satellite assemblies using Al.exe使用 Al.exe 创建附属程序集
【发布时间】:2012-05-31 19:46:41
【问题描述】:

我正在尝试使用 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?

非常感谢。

【问题讨论】:

    标签: .net localization resources satellite-assembly


    【解决方案1】:

    问题 1 的答案:

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

    问题 2 的答案:

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

    最佳方法:

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-02-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-09-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多