1615 votes

PowerShell « exécution de scripts est désactivée sur ce système. »

Je suis en train de lancer le un .cmd fichier qui appelle un script Powershell à partir de l'invite de commande et j'obtiens l'erreur ci-dessous:

Management_Install.ps1 ne peut pas être chargé, car l'exécution de scripts est désactivée sur ce système.

J'ai couru set-executionpolicy unrestricted et quand je le lance en get-executionpolicy de Powershell-je obtenir de l' unrestricted de retour

//Sortie à partir de Powershell

PS C:\Users\Administrator> get-executionpolicy

Sans restriction

//Sortie à partir de Dos

C:\Projects\Microsoft.Practices.ESB\Source\Samples\Management Portail\Installer\Scr

ipts>powershell .\Management_Install.ps1 1

AVERTISSEMENT: l'Exécution x86 PowerShell...

Fichier C:\Projects\Microsoft.Practices.ESB\Source\Samples\Management Portail\Installer\Scripts\Management_Install.ps1 ne peut pas être chargé, car l'exécution de scripts est désactivée sur ce système. Veuillez consulter la rubrique "get-help about_signing" pour plus de détails.

Au niveau de ligne:1 caractère:25

  • .\Management_Install.ps1 <<<< 1

    • CategoryInfo : NotSpecified: (:) [], PSSecurityException

    • FullyQualifiedErrorId : RuntimeException

C:\Projects\Microsoft.Practices.ESB\Source\Samples\Management Portail\Installer\Scripts>pause

Appuyez sur n'importe quelle touche pour continuer . . .

Le système est Windows Server 2008 R2.

Toutes les idées pour ce que je fais de mal?

2062voto

Chad Miller Points 6207
<p>Si vous utilisez Windows 2008 R2 puis il y a une version x64 et x86 de PowerShell qui ont tous deux d’avoir leurs stratégies d’exécution définie. Avez-vous définir la stratégie d’exécution dans les deux hôtes ?<p>Vous pouvez définir la stratégie d’exécution en tapant ceci dans votre fenêtre de powershell :</p><p><code></code></p><p>Pour plus d’informations, voir <a href="http://technet.microsoft.com/en-us/library/ee176949.aspx#EEAA">ici</a>.</p></p>

656voto

Jack Edmonds Points 10264
<p>Vous pouvez contourner cette politique en ajoutant <code></code> lorsque vous exécutez PowerShell<pre><code></code></pre></p>

142voto

Ralph Willgoss Points 3452
<p>J’ai eu un problème similaire et a noté que la valeur par défaut <code></code> sur Windows 2012 courait le x64 un.<p>Pour <strong>Windows Server 2008R2</strong> ou <strong>Windows Server 2012</strong>, exécutez les commandes suivantes en tant <strong>qu’administrateur</strong>:</p><p><em>x86</em><br>Ouvert<code></code><br>Exécutez la commande<code></code></p><p><em>x64</em><br>Ouvert<code></code><br>Exécutez la commande<code></code></p></p>

37voto

Ryan Points 2038

Dans Windows 7:

Allez au Menu Démarrer et de la recherche pour "Windows PowerShell ISE".

Cliquez-droit sur la version x86 et choisissez "Exécuter en tant qu'administrateur".

Dans la partie supérieure, pâte Set-ExecutionPolicy RemoteSigned; exécuter le script. Choisissez "Oui".

Répétez ces étapes pour la version 64 bits de Powershell ISE trop (non version x86).

Je suis juste clarifier les étapes que @Tchad Miller a fait allusion à l'. Grâce Au Tchad!

36voto

manik sikka Points 199
<p>Également lancer cette commande avant script résout également le problème ::<pre><code></code></pre></p>

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X