ps1 kan niet worden geladen omdat het uitvoeren van scripts is uitgeschakeld op dit systeem

Ik probeer het powershell-script uit te voeren vanuit c#.

Eerst heb ik ExecutionPolicyingesteld op Unrestricteden het script wordt nu uitgevoerd vanuit PowerShell ISE.

Dit is nu c# mijn code:

class Program
{
    private static PowerShell ps;
    static void Main(string[] args)
    {
        ps = PowerShell.Create();
        string ps1File = Path.Combine(Environment.CurrentDirectory, "script.ps1");
        ExecuteScript(ps1File);
        Console.ReadLine();
    }
    static void ExecuteScript(string script)
    {
        try
        {
            ps.AddScript(script);
            Collection<PSObject> results = ps.Invoke();
            Console.WriteLine("Output:");
            foreach (var psObject in results)
            {
                Console.WriteLine(psObject);
            }
            Console.WriteLine("Non-terminating errors:");
            foreach (ErrorRecord err in ps.Streams.Error)
            {
                Console.WriteLine(err.ToString());
            }
        }
        catch (RuntimeException ex)
        {
            Console.WriteLine("Terminating error:");
            Console.WriteLine(ex.Message);
        }
    }
}

En de uitvoer is:

ps1 kan niet worden geladen omdat het uitvoeren van scripts hierop is uitgeschakeld
systeem. Voor meer informatie zie about_Execution_Policies op
http://go.microsoft.com/fwlink/?LinkID=135170.


Antwoord 1, autoriteit 100%

Dit kan komen doordat de huidige gebruiker een ongedefinieerd ExecutionPolicyheeft.

U kunt het volgende proberen:

Set-ExecutionPolicy -Scope CurrentUser -ExecutionPolicy Unrestricted

Antwoord 2, autoriteit 8%

Open powershell in beheerdersmodus
en voer de volgende opdracht uit

Set-ExecutionPolicy RemoteSigned


Antwoord 3, autoriteit 6%

Voer deze code uit in uw powershell of cmd

Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass

Antwoord 4, autoriteit 6%

Als u visuele studiocode gebruikt:

  1. Terminal openen
  2. Voer de opdracht uit: Set-ExecutionPolicy -Scope CurrentUser -ExecutionPolicy Unrestricted
  3. Voer vervolgens het commando gradenboog conf.js uit

Dit is gerelateerd aan de uitvoering van het gradenboogtestscript en ik had hetzelfde probleem en het is als volgt opgelost.


Antwoord 5, autoriteit 2%

De volgende drie stappen worden gebruikt om op te lossen dat het uitvoeren van scripts is uitgeschakeld bij deze systeemfout

Stap1: Om dit soort problemen op te lossen, moeten we power shell starten in de beheerdersmodus.

Stap2: Typ de volgende opdracht set-ExecutionPolicy RemoteSigned
Stap 3: Druk op Y voor uw bevestiging.

Ga naar het volgende voor meer informatie https://youtu.be/J_596H-sWsk


Antwoord 6

Open de VS Code-terminal en voer het volgende script uit:

Set-ExecutionPolicy -Scope CurrentUser -ExecutionPolicy Unrestricted

Antwoord 7

Een andere oplossing is Verwijder ng.ps1 uit de directory C:\Users%username%\AppData\Roaming\npm\ en het wissen van de npm-cache


Antwoord 8

Het PowerShell-uitvoeringsbeleid is standaard ingesteld op beperkte. U kunt het PowerShell-uitvoeringsbeleid wijzigen met Set-ExecutionPolicy Cmdlet. Om het beleid van het script instellen uit te voeren om af te rekenen.

PS C: & GT; Set-executionPolicy is afgeleverd
Hieronder vindt u de lijst van vier verschillende uitvoeringsbeleid in PowerShell

Beperkt – Er kunnen geen scripts worden uitgevoerd.
Allsigned – Alleen scripts die ondertekend door een vertrouwde uitgever kunnen worden uitgevoerd.
Afstandsbediening – gedownloade scripts moeten worden ondertekend door een vertrouwde uitgever.
Onbeperkte – Alle Windows Powershell-scripts kunnen worden uitgevoerd.


Antwoord 9

Open Windows PowerShell in de beheerdermodus en voer de volgende opdracht uit en zijn werk Voila !!

Set-uitvoeringPolicy Delotesigned


Antwoord 10

Ik probeer gewoon deze cmd in terminal en mijn probleem is opgelost

Set-ExecutionPolicy -ExecutionPolicy Bypass -Scope CurrentUser

Opmerking: wijzig de currentuser niet naar uw gebruikersnaam


Antwoord 11

Plak deze code in uw terminal

(Visual Studio Code Terminal of een IDE die u gebruikt)

Set-ExecutionPolicy -Scope CurrentUser -ExecutionPolicy Unrestricted

Druk op ENTER

Geniet 🙂


Antwoord 12

Ik denk dat u de PowerShell in de administratieve modus of opdrachtprompt kunt gebruiken.

Other episodes