Ich habe diesen C# Code um ein powershell Script auszuführen.
// Definieren Sie den Namen Ihrer neuen VM
string vmName = "NeueVM";
// Definieren Sie den Pfad zum Speichern der VM-Dateien
string vmPath = @"D:\" + vmName;
// Erstellen Sie den PowerShell-Befehl als Skript
string powerShellScript = $@"
New-VM -Name {vmName} -Path {vmPath} -MemoryStartupBytes 2GB -BootDevice CD -SwitchName IhrSwitchName -Generation 2
";
// Pfad zum PowerShell-Exe-Datei
string powerShellExe = @"C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe";
// Starten Sie den PowerShell-Prozess
using (Process process = new Process())
{
ProcessStartInfo startInfo = new ProcessStartInfo
{
FileName = powerShellExe,
RedirectStandardInput = true,
RedirectStandardOutput = true,
RedirectStandardError = true,
UseShellExecute = false,
CreateNoWindow = true
};
process.StartInfo = startInfo;
process.Start();
// Führen Sie das PowerShell-Skript aus
process.StandardInput.WriteLine(powerShellScript);
process.StandardInput.Close();
// Lesen Sie die Ausgabe und Fehlermeldung
string output = process.StandardOutput.ReadToEnd();
string error = process.StandardError.ReadToEnd();
// Warten Sie darauf, dass der Prozess beendet wird
process.WaitForExit();
// Überprüfen Sie die Ausgabe und Fehlermeldung
if (!string.IsNullOrEmpty(error))
{
Console.WriteLine("PowerShell-Fehler: " + error);
}
else
{
Console.WriteLine("VM erfolgreich erstellt!");
}
}
Bei der Ausführung endet das Programm aber mit einem Fehler.
PowerShell-Fehler: . : Die Datei "C:\Users\poldi\Documents\WindowsPowerShell\profile.ps1" kann nicht geladen werden, da die Ausführung
von Skripts auf diesem System deaktiviert ist. Weitere Informationen finden Sie unter "about_Execution_Policies"
(https:/go.microsoft.com/fwlink/?LinkID=135170).
In Zeile:1 Zeichen:3
+ . 'C:\Users\poldi\Documents\WindowsPowerShell\profile.ps1'
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : Sicherheitsfehler: (:) [], PSSecurityException
+ FullyQualifiedErrorId : UnauthorizedAccess
New-VM : Sie besitzen nicht die erforderliche Berechtigung für diese Aufgabe. Wenden Sie sich an den Administrator der
Autorisierungsrichtlinie für Computer "DESKTOP-HANO6II".
In Zeile:1 Zeichen:1
+ New-VM -Name NeueVM -Path D:\NeueVM -MemoryStartupBytes 2GB -BootDevi ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (:) [New-VM], VirtualizationException
+ FullyQualifiedErrorId : Unspecified,Microsoft.HyperV.PowerShell.Commands.NewVM
Was bedeutet das und wie kann ich das Script richtig ausführen?