![]() |
PowerShell-Skript mit Parametern ausführen
Guten Abend,
folgenden Code nutze ich zur Ausführung einer *.ps1-Datei (wobei die hier angegeben Powershell-Datei nur ein Beispiel ist):
Code:
Der Code stammt von jaenicke aus der "Entwickler-Ecke"
ShellExecute(Handle, 'open', 'powershell.exe', '"-Command" "if((Get-ExecutionPolicy ) -ne ''AllSigned'') '
+ '{ Set-ExecutionPolicy -Scope Process Bypass }; & ''C:\Temp\test.ps1''"', '', SW_SHOWNORMAL); ![]() Die Skript-Datei:
Code:
Wie bekomme ich die drei Parameter übergeben?
param([string]$Str1,[string]$Str2,[string]$Str3)
Write-Output "Erster Parameter $Str1 " + "Zweiter Parameter $Str2 " + "Dritter Parameter $Str3 " | Out-File -FilePath testparameter.txt Einfach mit Leerzeichen nach ps1 im ersten Code an den Skriptpfad anhängen funktioniert nicht (weder mit Anführungszeichen, noch mit Hochkomma oder ohne alles). Ich habe keine Idee mehr... Danke! |
AW: PowerShell-Skript mit Parametern ausführen
Vergessen zu schreiben:
Skript läuft in der Powershell-Umgebung mit .\test.ps1 "Parameter1" "Parameter2" "Parameter3" einwandfrei |
AW: PowerShell-Skript mit Parametern ausführen
Hmm..
![]() Hier wird auf die richtige Verwendung von " " und ' ' eingegangen... Vielleicht ist dies hilfreich.. |
AW: PowerShell-Skript mit Parametern ausführen
Danke für den Link!
Ich habe mir schon fast gedacht, dass es etwas mit den Anführungszeichen zu tun haben könnte. In PHP gibt es auch manchmal solche "abenteuerliche" Hochkomma- oder Anführungszeichen-Kaskaden wenn man einen Javascript einbindet und dort Parameter übergibt. Allerdings kann ich es momentan nicht testen, da ich an einem Rechner ohne Delphi sitze. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:04 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz