Babybaer Geschrieben 1. Juli 2004 Geschrieben 1. Juli 2004 Hallo Leutz, mein Problem besteht darin etwas in die CMD-Console zu schreiben. Ich habe eine MFC-Anwendung mit Commandline. Da ich beide Optionen benötige (Dialog und CMD) muß ich Returnwerte an die Console schicken. Nur pop das Ding nur kurz auf. Das ist aber nicht das was ich will. Ich möchte das der Text in der Console sichtbar wird, in dem ich zuvor mein Programm gestartet habe. FILE *stream; stream = fopen( "fprintf.out", "w" ); fprintf(stdout,"hello-out"); fclose( stream ); system( "type fprintf.out" ); :confused: THX
Guybrush Threepwood Geschrieben 1. Juli 2004 Geschrieben 1. Juli 2004 So gehts bei mir: #include <stdio.h> #include <stdlib.h> int main() { FILE *stream; stream = fopen( "fprintf.out", "w" ); fprintf(stdout,"hello-out\n"); fclose( stream ); system( "type fprintf.out" ); system ("pause"); return 0; } [/PHP]
Babybaer Geschrieben 2. Juli 2004 Autor Geschrieben 2. Juli 2004 Nein das ist es nicht gewesen, leider. Der macht mir ein neues Fenster auf, das bleibt zwar stehen, ist so aber nicht gewünscht. Sollte man da nicht mit FindWindow ran gehen? Das ist ein Mist.
Klotzkopp Geschrieben 2. Juli 2004 Geschrieben 2. Juli 2004 Wenn du den cmd-Prozess mit CreateProcess erstellst, hast du die Möglichkeit, dem Prozess neue Handles mitzugeben, die dieser für STDIN, STDOUT und STDERR benutzt. Wenn du dafür Pipe-Handles benutzt, kannst du die Konsole "fernsteuern" und die Ausgabe wie aus einer Datei lesen.
Guybrush Threepwood Geschrieben 2. Juli 2004 Geschrieben 2. Juli 2004 Nein das ist es nicht gewesen, leider. Der macht mir ein neues Fenster auf, das bleibt zwar stehen, ist so aber nicht gewünscht. Sollte man da nicht mit FindWindow ran gehen? Das ist ein Mist. Also bei mir erscheint nur ein Konsolenfenster in dem der Text steht und auf die Taste gewartet wird. Was hast du den für ein BS?
Babybaer Geschrieben 5. Juli 2004 Autor Geschrieben 5. Juli 2004 Also ich benutze das Windows XP, aber das sollte auch unter NT tun. Entwickelt in MS VS.net 7.1 mit MFC. Benutze noch ActiveX und Socket Komponenten. Vorgehen: 1. Ich mache eine DosBox auf. 2. xxxx.exe -Parameter + Argumente und dann Programm starten (DosBox bleibt bestehen) 3. Verarbeitung der CmdLine 4. Ausgabe an DosBox in der das Programm gestartet wurde. (TUT NICHT) Es ist bestimmt möglich mit FindWindow aber was mache ich wenn der User mehrere DosBoxen auf hat? Also etwas schlecht die Idee. Aber es muss doch möglich sein, heraus zubekommen wo das Programm gestartet wurde. Leider habe ich keinen Object auf das ich zugreifen kann. Schnief.
BOOT Geschrieben 14. April 2006 Geschrieben 14. April 2006 Also ich benutze das Windows XP, aber das sollte auch unter NT tun. Entwickelt in MS VS.net 7.1 mit MFC. Benutze noch ActiveX und Socket Komponenten. Vorgehen: 1. Ich mache eine DosBox auf. 2. xxxx.exe -Parameter + Argumente und dann Programm starten (DosBox bleibt bestehen) 3. Verarbeitung der CmdLine 4. Ausgabe an DosBox in der das Programm gestartet wurde. (TUT NICHT) Es ist bestimmt möglich mit FindWindow aber was mache ich wenn der User mehrere DosBoxen auf hat? Also etwas schlecht die Idee. Aber es muss doch möglich sein, heraus zubekommen wo das Programm gestartet wurde. Leider habe ich keinen Object auf das ich zugreifen kann. Schnief. Hallo Ich habe das gleiche Problem! Hast vieleich ein Tip für mich, fals du es schon mal gelöst hast? lg. BOOT
Babybaer Geschrieben 16. April 2006 Autor Geschrieben 16. April 2006 Nein leider nicht. Habe es in C# gemacht.
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden