Загрузка сборки .NET 4.0 beta2 в PowerShell 2.0
Я попробовал загрузить PresentationFramework.dll из .NET 4.0 beta2 в PowerShell v2.0. Но он не работает со следующей ошибкой.
PS C:\Windows\system32 > [Reflection.Assembly]:: LoadFile ( "C:\Windows\Microsoft.NET\Framework\v4.0.21006\WPF\PresentationF ramework.dll" )
Exception, вызывающий "LoadFile" с аргументом "1": "Эта сборка построена с использованием среды выполнения, более новой, чем текущая загруженная среда выполнения и не может быть загружена. (Исключение из HRESULT: 0x8013101B) На линии: 1 char: 32 + [Reflection.Assembly]:: LoadFile < < < (" C:\Windows\Microsoft.NET\Framework\v4.0.21006\WPF\PresentationFramework.dll") + CategoryInfo: NotSpecified: (:) [], MethodInvocationException + FullyQualifiedErrorId: DotNetMethodException
Как загрузить этот DLL файл в PowerShell 2.0?
Ответы
Ответ 1
Вы не можете загрузить его. PowerShell использует .NET 2.0 CLR, а файлы DLL 4.0 не могут быть загружены.
Возможно, можно будет перенастроить PowerShell для запуска в новой среде CLR или хост PowerShell в приложении .NET 4.0, но я бы не рекомендовал ни одно из них.
Ответ 2
Запустите этот код в административном режиме PowerShell:
reg add hklm\software\microsoft\.netframework /v OnlyUseLatestCLR /t REG_DWORD /d 1
reg add hklm\software\wow6432node\microsoft\.netframework /v OnlyUseLatestCLR /t REG_DWORD /d 1
Ответ 3
У меня была аналогичная проблема в Windows Server 2008 (с PowerShell v2), и я решил установить эти 2 обновления:
Microsoft.NET Framework 4.5.1
https://www.microsoft.com/fr-fr/download/details.aspx?id=40779
PowerShell v4
https://www.microsoft.com/en-US/download/details.aspx?id=40855