Seite 1 von 2
RunProgram - Frage
Verfasst: 11.06.2006 11:07
von dietmar
Warum schließt sich telnet wenn ich mit mehr als einem Flag aufrufe, und selbst mit einem Flag schließt es sich sobald der Befehl WriteProgramString zu Einsatz kommt.
Code: Alles auswählen
Telnet = RunProgram("telnet", "", "", #PB_Program_Open|#PB_Program_Write#|PB_Program_Read)
WriteProgramString(Telnet, "user")
Re: RunProgram - Frage
Verfasst: 11.06.2006 11:14
von DarkDragon
dietmar hat geschrieben:Warum schließt sich telnet wenn ich mit mehr als einem Flag aufrufe, und selbst mit einem Flag schließt es sich sobald der Befehl WriteProgramString zu Einsatz kommt.
Code: Alles auswählen
Telnet = RunProgram("telnet", "", "", #PB_Program_Open|#PB_Program_Write#PB_Program_Read)
WriteProgramString(Telnet, "user")
Syntax Error

. Als ob es kein Strg und kein C sowie kein V gäbe.
-> #PB_Program_Write#PB_Program_Read -> #PB_Program_Write|#PB_Program_Read
Verfasst: 11.06.2006 11:48
von dietmar
Sorry, habs auch gemerkt, bin halt seit 6 Tagen am überlegen wie es funktionieren würde. Asche über mein Haupt.
Verfasst: 11.06.2006 20:58
von Konne
Gut dass es dass Forum gibt wo einem mit soo doofen fehlern geholfen wird denn wenn man sich zum 100 mal seinen Code anschaut dann uebersieht man so leichtsinnsfehler halt manchmal...
Verfasst: 11.06.2006 21:07
von dietmar
Ja, aber das Problem ist somit noch immer nicht gelöst.
Verfasst: 12.06.2006 12:26
von dietmar
Weiß mir den keiner Rat? Außer das da ein Zeichen fehlte?
Verfasst: 12.06.2006 15:16
von Alves
Gibts es bei RunProgram überhaupt sone Flags?
In meiner Hilfe steht nur Flags: 1, 2
Und außerdem, wenn anders:
Öffnest du das Programm mit nur Read Erlaubnis aber trotzdem zum Schreiben?
Verfasst: 12.06.2006 15:46
von dietmar
Syntax
Ergebnis = RunProgram(DateiName$ [, Parameter$, Arbeitsverzeichnis$ [, Flags [, SenderProgramm]]])
Beschreibung
Startet ein externes Programm. Der 'DateiName$' sollte das Executable mit seinem kompletten Pfad enthalten. 'Parameter$' kann Kommandozeilen-Parameter beinhalten, welche an das Programm übergeben werden. 'Arbeitsverzeichnis$' kann ein Verzeichnis angeben, welches das aktuelles Verzeichnis für das externe Programm sein wird.
Flags sind optional und können eine Kombination (mittels '|' OR-Operator) der folgenden Werte sein:
#PB_Program_Wait : Wartet bis das gestartete Programm beendet wird
#PB_Program_Hide : Startet das Programm im unsichtbaren Modus
#PB_Program_Open : Öffnet ein Programm, um mit diesem zu kommunizieren oder Informationen darüber zu erhalten
#PB_Program_Read : Liest die Konsolenausgabe des Programms (stdout)
#PB_Program_Write : Schreibt in die Eingabe des Programms (stdin)
#PB_Program_Error : Liest die Fehlerausgabe des Programms (stderr)
#PB_Program_Connect: Verbindet die Ausgabe eines anderen Programms mit der Eingabe dieses Programms
Das steht zumindest in der Hilfe die ich auf dem PC hab, und dementsprechend hab ich auch die Flags gesetzt.
Verfasst: 12.06.2006 16:21
von #NULL
@dietmar
übrigens, der code im ersten post ist immernoch/wieder falsch:
# und |
sind vertauscht. aber in deinem eigenen code wirds ja vermutlich stimmen...
Verfasst: 12.06.2006 16:24
von dietmar
Ja, jetzt aber vielleicht doch einmal richtig. Hoffe ich zumindest alternativ muss leider PureBasic deinstallieren (Vollständige Aufgabe)
Code: Alles auswählen
Telnet = RunProgram("telnet", "", "", #PB_Program_Open|#PB_Program_Write|#PB_Program_Read)
WriteProgramString(Telnet, "user")