2009-12-21 5 views
2

J'ai essayé de charger PresentationFramework.dll de .NET 4.0 beta2 dans v2.0 PowerShell. Mais il échoue avec l'erreur suivante.un ensemble de beta2 .NET 4.0 dans PowerShell 2.0

PS C: \ Windows \ system32> [Reflection.Assembly] :: LoadFile ("C: \ Windows \ Microsoft.NET \ Framework \ v4.0.21006 \ WPF \ PresentationF ramework.dll")

Exception appelant "LoadFile" avec "1" argument (s): "Cet assembly est construit par un runtime plus récent que le runtime actuellement chargé et ne peut pas être chargé (Exception de HRESULT: 0x8013101B)" at line: 1 char: 32 + [Reflection.Assembly] :: LoadFile < < < < ("C: \ Windows \ Microsoft.NET \ Framework \ v4.0.21006 \ WPF \ PresentationFramework.dll") + Catégorie Info: NotSpecified: (:) [], MethodInvocationException + FullyQualifiedErrorId: DotNetMethodException

Comment puis-je charger ce fichier DLL au sein PowerShell 2.0?

+0

Pourquoi ne pouvez-vous pas charger l'assembly 3.0 à la place? –

+0

double possible de [Powershell de lancement sous .NET 4] (http://stackoverflow.com/questions/2094694/launch-powershell-under-net-4) –

+0

question similaire est abordée dans [Powershell de lancement sous .NET 4] (http://stackoverflow.com/questions/2094694/launch-powershell-under-net-4) –

Répondre

0

Vous ne pouvez pas le charger. PowerShell utilise le CLR .NET 2.0 et les fichiers DLL 4.0 ne peuvent pas être chargés.

Il pourrait être possible de reconfigurer PowerShell pour exécuter dans le plus récent CLR ou hôte PowerShell dans une application .NET 4.0, mais je ne recommanderais pas non plus de ceux-ci.

+2

oh merci pour le downvote de messages contenant, qui a été :-) quelqu'un peut-il utile si je pointer me trompe dans mon hypothèse? –

0

Exécutez ce code dans le mode d'administration de 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 
Questions connexes