Visual Studio и msbuild создают библиотеки ресурсов .NET 4 вместо 3.5
Если вы следуете инструкциям по доступу к файлам ресурсов resx из другого проекта для создания переводов с использованием файлов 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
Когда я проверяю выходные DLL с помощью dotPeek от jetbrain, я вижу, что вспомогательные библиотеки DLL - это .net 4.0.
У коллеги нет .net 4.8 или Windows SDK 10, и он создает вспомогательные библиотеки DLL .net 3.5. У него Windows SDK 7.
Проблема AFAIK связана с al.exe, который выводит эти библиотеки DLL.
1 ответ
Проблема действительно была в
al.exe
. Конфигурация в
al.exe.config
указывал, что он должен поддерживать
v4.0
дотнет.
<startup useLegacyV2RuntimeActivationPolicy="true">
<supportedRuntime version="v4.0.30319"/>
</startup>
И изменив его на:
<startup>
<supportedRuntime version="v2.0.50727"/>
</startup>
решил это.