2017-01-13 6 views
0

Wie führe ich ein Powershell-Skript aus AutoIt-Code aus?Ausführen von Powershell-Skript von Autoit?

Ich nehme es etwas sein könnte:

Runwait(@ComSpec & " /c powershell.exe c:\Mytest.ps1", "", @SW_HIDE) 

oder

Runwait(powershell.exe c:\Mytest.ps1", "", @SW_HIDE) 

Aber keiner von denen scheinen zu funktionieren.

+0

'powershell.exe -Datei C: \ MyTest.ps1' (wenn die Skriptausführungsrichtlinie dies zulässt). –

Antwort

2
Runwait("powershell.exe c:\Mytest.ps1", "", @SW_HIDE) 

und klicken Sie rechts auf AU3-Datei und wählen Sie 'ausführen Skript (x64)'

Test Powershell-Skript, das ich verwendet:

"heelllo" >> h:\somesome.txt 
+0

Danke, das funktioniert im Grunde ... wenn ich mit der rechten Maustaste klicke und als "run script (x64) ausführe" funktioniert es einwandfrei ... aber wenn ich im SciTE-Skript-Editor bin, bei geöffnetem Skript, führe das Skript durch Drücken Sie "F5" ... Von dort funktioniert es nicht. Irgendwelche Gedanken? Ich habe versucht, den Skript-Editor als Administrator in Windows ausführen, aber nichts. – user952342

0

ich das Ende, diese Lösung scheint zu funktionieren:

Local $iPID = Run('powershell.exe -executionpolicy bypass -windowstyle hidden -noninteractive -nologo -file C:\MyScript.ps1"', "c:\", @SW_HIDE, $STDOUT_CHILD) 
; Wait until the process has closed using the PID returned by Run. 
ProcessWaitClose($iPID) 
; Read the Stdout stream of the PID returned by Run. 
Local $sOutput = StdoutRead($iPID)