为.NET Core 3.1应用程序从.resx生成资源dll

问题描述 投票:0回答:1

这是我的第一篇文章,所以我希望我做对了。

我正在使用c#和VS 2019在Windows内部开发.NET Core应用程序的公司工作。我使用的.NET Core版本是3.1。 Visual Studio已更新为最新版本(14.5)。

我们已经编写了所有UI,并且我们想知道是否有任何方法可以从resx文件生成关联的本地化DLL。

这对于欧洲的翻译人员将应用程序本地化并在应用程序内部测试结果很有用。

我一直在寻找一种方法(从resx生成dll)几天,而无法正确找到从VS生成的resx文件中成功生成此dll的方法。到目前为止我尝试过的是:

  1. 将Resgen和al.exe与几个参数一起使用。我得到的结果是生成了dll,但未从应用程序加载]
  2. 将csc.exe与输入一起使用要转换的resx文件。结果我得到了一个未从应用程序加载的dll
  3. 尝试使用不同版本的dotnet SDK,从SDK文件夹中调用“ dotnet csc.dll”,而无法生成从应用程序加载的有效dll

我现在的问题是,有什么方法可以不在VS内部生成可以从转换器计算机加载的临时dll来测试应用程序,或者,唯一的方法是从他那里获取resx文件,然后从开发人员计算机生成dll并退还给翻译器,以便进行正确测试?如果没有,有没有办法在没有所有源代码的情况下从VS社区生成resx构建的dll(如您所想,我们不想重新分发源代码)?关于我们如何解决此问题的其他想法?

我们想到的另一个想法是创建一个单独的资源项目,并将其分发给我们的翻译。如果没有其他有用的想法,我想我会在下午尝试这种方式。

谢谢您对此邮件的任何回复。

c# c++ dll resx
1个回答
0
投票

您可以使用两种方法

1)RegGen +程序集链接器

使用ResGen.exe将本地化的.resx文件编译成.resources然后使用AL.exe链接附属程序集文件

2)使用Visual Studio。

只需将本地化的.resx文件添加到您的csproj文件中。下次生成时,Visual Studio还将生成附属程序集。

在创建卫星之前,您需要具有本地化的.resx文件。使用本地化工具创建它们。例如Soluling

© www.soinside.com 2019 - 2024. All rights reserved.