问题描述
如果您按照 Access resx resource files from another project 上的说明使用 resx 文件创建翻译,当项目为 .net 3.5 时,它不起作用并且似乎忽略了指定的区域性。
问题似乎与我的构建链有关。 我已经安装
- .net 4.8
- Windows SDK 10(我有这个 C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.8 Tools)
- Visual Studio 2019
当我使用 jetbrain 的 dotpeek 检查输出 DLL 时,我看到卫星 DLL 是 .net 4.0
一位同事没有 .net 4.8 或 Windows SDK 10,他生成了卫星 DLL .net 3.5 他有 Windows SDK 7。
AFAIK 的问题在于输出这些 DLL 的 al.exe。
解决方法
问题确实出在 al.exe
上。 al.exe.config
中的配置指定它应该支持 dotnet 的 v4.0
。
<startup useLegacyV2RuntimeActivationPolicy="true">
<supportedRuntime version="v4.0.30319"/>
</startup>
并将其更改为:
<startup>
<supportedRuntime version="v2.0.50727"/>
</startup>
解决了。