1
votes

PowerShell comment ajouter du type à partir de GAC

J'essaie d'appeler Add-Type -AssemblyName myassembly , et myassembly a été enregistré dans GAC, mais j'ai toujours eu l'erreur suivante:

Impossible d'ajouter le type. L'assemblage "myassembly" est introuvable.

Je sais comment Ajouter-Type à partir d'un emplacement de fichier, existe-t-il un moyen pratique de Ajouter-Type à partir de GAC ?


2 commentaires

Utilisez le nom complet de l'assembly.


@PetSerAl J'ai oublié de tester le nom complet de l'assemblage, merci pour votre aide.


3 Réponses :


2
votes

Pour charger à partir du GAC, vous avez besoin du nom d'assembly complet:

Add-Type -AssemblyName "Microsoft.Web.Deployment, Version=9.0.0.0", Colture=netural, PublicKeyToken=89956cdc9090cc76"

Et oui, c'est vraiment ennuyeux!


1 commentaires

Il y a quelques erreurs de sorts. Il doit s'agir de "Microsoft.Web.Deployment, Version = 9.0.0.0, Culture = netural, PublicKeyTokwn = 89956cdc9090cc76"



0
votes

Vous pouvez également utiliser [System.Reflection.Assembly] :: LoadWithPartialName ('Microsoft.Web.Deployment') Oui I sachez qu'il est obsolète et vous devriez utiliser Load () .

Souvent, vous pouvez ne pas avoir le nom complet et don ' t soin d'énumérer les assemblys dans le GAC. Cela vous permettra de charger l'assemblage. Si vous le souhaitez, vous pouvez ensuite extraire le nom complet à utiliser avec Load () pour vos scripts à l'avenir.

[System.Reflection.Assembly]::LoadWithPartialName('system.web.security')
PS c:\> [System.Web.Security.Membership].Assembly.Fullname
System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a


0 commentaires

0
votes

Si vous le copiez sur un autre ordinateur, vous devez le débloquer.


0 commentaires