[RunProgram() + .cmd] einige Einträge werden nicht gestartet
Verfasst: 28.09.2013 19:03
Hallo Leute,
habe ein kleines Problem und ich weiß nicht wie ich es lösen kann.
Ich möchte eine Batch-Datei (.cmd) unsichtbar ausführen und die Konsolenausgabe in einer GUI anzeigen. Prinzipiell funktioniert es auch, allerdings werden nicht mehr alle Programme in der Batch-Datei ausgeführt, sobald ich den Parameter #PB_Program_Open benutze.
PureBasic Code (v5.11):
die Test.cmd-Datei:
Die Ausgabe in der GUI:
Hat jemand eine Idee, woran es liegen könnte?
Noch eine Nebenfrage: Kann man in PureBasic ermitteln, mit welcher Farbe die Ausgabe in der Konsole stattgefunden hat?
lg
SBond
habe ein kleines Problem und ich weiß nicht wie ich es lösen kann.
Ich möchte eine Batch-Datei (.cmd) unsichtbar ausführen und die Konsolenausgabe in einer GUI anzeigen. Prinzipiell funktioniert es auch, allerdings werden nicht mehr alle Programme in der Batch-Datei ausgeführt, sobald ich den Parameter #PB_Program_Open benutze.
PureBasic Code (v5.11):
Code: Alles auswählen
OpenWindow(0, 0, 0, 800, 600, "CMD-Ausgabe", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
EditorGadget(1, 0, 0, 800, 600)
Ausgabe_Roh$ = ""
Ausgabe_Convert$ = ""
Programm = RunProgram("C:\Test.cmd","", "C:\", #PB_Program_Open | #PB_Program_Read | #PB_Program_Hide)
Repeat
Delay (10)
If Programm
If AvailableProgramOutput(Programm)
Ausgabe_Roh$ = ReadProgramString(Programm)
OemToChar_(Ausgabe_Roh$, Ausgabe_Convert$)
AddGadgetItem(1, -1, Ausgabe_Convert$)
EndIf
EndIf
Until WaitWindowEvent() = #PB_Event_CloseWindow
CloseProgram(Programm)
die Test.cmd-Datei:
Code: Alles auswählen
@echo off
cls
echo Sonderzeichen-Test 1: ä Ä ö Ö ü Ü ß
echo Sonderzeichen-Test 2: „ Ž ” ™ š á
echo.
echo.
echo Pingtest...
ping www.google.de
echo.
echo.
echo Checkdisk...
chkdsk C:
echo.
echo.
echo Batch beendet
Die Ausgabe in der GUI:
Checkdisk wird nicht ausgeführt. Den Grund kenne ich nichtSonderzeichen-Test 1: õ - ÷ Í ³ _ ¯
Sonderzeichen-Test 2: ä Ä ö Ö Ü ß
Pingtest...
Ping wird ausgeführt für http://www.google.de [173.194.40.88] mit 32 Bytes Daten:
Antwort von 173.194.40.88: Bytes=32 Zeit=56ms TTL=56
Antwort von 173.194.40.88: Bytes=32 Zeit=70ms TTL=56
Antwort von 173.194.40.88: Bytes=32 Zeit=114ms TTL=56
Antwort von 173.194.40.88: Bytes=32 Zeit=76ms TTL=56
Ping-Statistik für 173.194.40.88:
Pakete: Gesendet = 4, Empfangen = 4, Verloren = 0
(0% Verlust),
Ca. Zeitangaben in Millisek.:
Minimum = 56ms, Maximum = 114ms, Mittelwert = 79ms
Checkdisk...
Batch beendet
Hat jemand eine Idee, woran es liegen könnte?
Noch eine Nebenfrage: Kann man in PureBasic ermitteln, mit welcher Farbe die Ausgabe in der Konsole stattgefunden hat?
lg
SBond