У меня возникли проблемы с созданием объединенной DLL для установки на .net4.0 на машине с Windows 8. Я могу успешно строить отдельные библиотеки DLL .net4.0 в VS2012, так что я не имею эту проблему:Target. Net 4.0 при использовании Windows 8/VS2012
Targeting .NET 4.0 in VS 2012 on Windows 8
я пришел через следующий отличную блоге, которые обсуждают мой вопрос:
, а также:
Could not load type 'System.Runtime.CompilerServices.ExtensionAttribute' from assembly 'mscorlib
который SuG Я использую на мысль, следующий синтаксис в процессе слияния:
/targetplatform:"v4,C:\Program Files\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0"
К сожалению, в Windows 8 не имеют этот каталог. Я могу думать о следующих возможных решениях, но было бы интересно узнать, разрешил ли кто-нибудь это.
- Скопируйте сборки .net 4.0 из машины Windows 7 в указанный выше каталог вручную.
- Найти сборки .net 4.0, используемые VS2012, и ссылаться на них.
- ??
Это, конечно, потому, что на этой машине у вас просто не было .NET 4.0. У машины Windows 8 с VS2012 только .NET 4.5. Поэтому вы должны строить проекты, ориентированные на 4,5. Это автоматически решает эту проблему. –
@HansPassant - Вы делаете хороший момент, но мне все еще нужно создавать сборки для систем .net2.0 +. Это не проблема для .net2.0 и .net3.5, поскольку они доступны в Windows 8, проблема была в .net4.0. – MarcF