如何解决Visual Studio 和 msbuild 生成 .net 4 资源 dll 而不是 3.5
如果您按照 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>
解决了。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。