Seite 1 von 1
Powershell- gelöst
Verfasst: 10.01.2015 00:44
von Fordey_ra
Ich hätte da mal eine vielleicht dumme Frage
Folgender Code funktioniert nicht.
Warum ?
Code: Alles auswählen
RunProgram ("c:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe C:\Temp\Sicher.bat","","",#PB_Program_Wait)
Inhalt der Sicher.bat = Notepad
nur als Beispiel
(Klar könnte ich das auch einfach über die Kommandozeile machen)
Re: Powershell
Verfasst: 10.01.2015 00:54
von helpy
Die Datei "Sicher.bat" dürfte eine BATCH-Datei und kein PowerShell-Skript sein!
Deshalb sollte folgendes reichen:
Code: Alles auswählen
RunProgram ("C:\Temp\Sicher.bat","","",#PB_Program_Wait)
Re: Powershell
Verfasst: 10.01.2015 00:55
von RSBasic
1. Benutze bitte Umgebungsvariablen, um auf eine Systemdatei bzw. -anwendung zuzugreifen. Das Zugreifen auf einen absoluten Pfad mit direkter Laufwerksbuchstabennennung kann auch schief gehen.
2. Schau dir die Parameterliste von RunProgram() in der PB-Hilfe an. Du hast einen zusätzlichen Parameter für die Parameterübergabe:
PureBasic-Hilfe - RunProgram() hat geschrieben:Ergebnis = RunProgram(DateiName$ [, Parameter$, Arbeitsverzeichnis$ [, Flags [, SenderProgramm]]])
3. Wenn du als Parameter einen Dateipfad übergeben möchtest, dann füge vorsichtshalber vor und nach dem Pfad ein Anführungszeichen ein, falls im Pfad Leerzeichen vorhanden sind, sonst wird der Pfad abgeschnitten und der andere Abschnitt zählt als 2. Parameter.
4. Warum möchtest du über powershell.exe deine Batchdatei ausführen? Warum nicht über cmd.exe?
Bzw. du kannst auch direkt deine Datei ausführen:
Code: Alles auswählen
RunProgram ("C:\Temp\Sicher.bat", "", "", #PB_Program_Wait)
Re: Powershell
Verfasst: 10.01.2015 00:55
von Kiffi
"C:\Temp\Sicher.bat" kommt in den Parameter-Parameter
Grüße ... Peter
Re: Powershell
Verfasst: 10.01.2015 15:09
von Fordey_ra
Vielen Dank für die Antworten !
Das funktioniert Super.
Hätte mir die Hilfe mal gleich besser anschauen sollen.
Ich habe 7Zip damit gestartet der ein Verzeichnis komprimiert und die Aufzählung der Dateien
sieht in der Powershell einfach besser aus als im öden cmd.exe.
Naja ist auch Geschmacksache und sicherlich nicht das Wichtigste.
Viele Grüße an alle hier.
Dank Pure-Basic und natürlich diesem tollen Forum

habe ich unsere Dos- Programme bald alle umgeschrieben.