Befehl für Programm ohne Pausen öffnen

Programmieren in C++
Antworten
Autor
Nachricht
Benutzeravatar
Funs
5 Bit
Beiträge: 47
Registriert: So Jan 20, 2008 18:34

Befehl für Programm ohne Pausen öffnen

#1 Beitrag von Funs » Di Sep 29, 2009 15:34

Hi,
wie schaffe ich es, dass ihc ein anderes programm, welches ein windows terminal programm is auszuführen ohne die pausen ("Belibige Taste drücken..."usw) oda das mein programm dann irwie die tasten drückt.
Gibt es dafür ein Befehl?


mfg Funs

Benutzeravatar
kuru
10 Bit
Beiträge: 1032
Registriert: Do Dez 04, 2008 09:13

Re: Befehl für Programm ohne Pausen öffnen

#2 Beitrag von kuru » Di Sep 29, 2009 17:52

Wenn du XP benutzt könntest Du Dir ein kleines WSH-Script erstellen: einfach eine neue .VBS-datei anlegen und editieren.
Unter http://www.wallstreet-online.de/diskussion/236548 findest Du raus wie man mit WSH ein Programm startet und
wie die Befehle zum Senden von Tastaturcodes, sowie zum Warten lauten. So kannst Du die Tastendrücke ordentlich timen.
Dann rufst Du am Anfang Deines WSH-Scripts die CMD-Shell mit deiner Anwendung auf und läßt den Rechner den Rest machen.

edit:
Man kann in der CMD auch per

Code: Alles auswählen

befehl > nul
sämtliche Ausgaben umleiten, in diesem Fall ins Nirvana. Keinen Schimmer, ob es auch diese PAUSE Anweisung in nem Shellscript übergeht, müsste man mal versuchen, vielleicht hilft Dir das irgendwie.

editedit:
Was hat das Ganze mit C++ zu tun? ^^

Benutzeravatar
Screeny
11 Bit
Beiträge: 3903
Registriert: Di Okt 14, 2008 18:48
Wohnort: Wiesbaden

Re: Befehl für Programm ohne Pausen öffnen

#3 Beitrag von Screeny » Di Sep 29, 2009 18:04

Vielleicht hilft dir ja auch die CMD Referenz:
cmd.exe /? > D:\log.txt hat geschrieben:Startet eine neue Instanz des Windows Befehlsinterpreters.

CMD [/A | /U] [/Q] [/D] [/E:ON | /E:OFF] [/F:ON | /F:OFF] [/V:ON | /V:OFF]
[[/S] [/C | /K] Zeichenfolge]

/C Führt den Befehl in der Zeichenfolge aus und endet dann.
/K Führt den Befehl in der Zeichenfolge aus und endet dann nicht.
/S Bestimmt Behandlung von Zeichenfolgen nach /C oder /K (siehe unten).
/Q Schaltet die Befehlsanzeige aus.
/D Deaktiviert die Ausführung von AutoRun-Befehlen von der Registrierung.
/A Ausgabe interner Befehle in eine Pipe oder Datei im ANSI-Format.
/U Ausgabe interner Befehle in eine Pipe oder Datei im UNICODE-Format.
/T:fg Legt die Hinter- bzw. Vordergrundfarben fest (siehe auch COLOR /?).
/E:ON Aktiviert Befehlserweiterungen (siehe unten).
/E:OFF Deaktiviert Befehlserweiterungen (siehe unten).
/F:ON Aktiviert die Ergänzung von Datei- und Verzeichnisnamen.
/F:OFF Deaktiviert die Ergänzung von Datei- und Verzeichnisnamen.
/V:ON Aktiviert verzögerte Erweiterung von Variablen, ! wird dabei als
Trennzeichen verwendet. Zum Beispiel wird mit /V:ON die Variable
!var! zur Ausführungszeit erweitert. Im Gegensatz dazu wird bei
Verwendung der Syntax var die Variable zum Zeitpunkt der Eingabe
aufgelöst (Diese Werte können z. B. in einer FOR-Schleife
unterschiedlich sein!).
/V:OFF Deaktiviert die verzögerte Erweiterung von Variablen.
Ich würde jetzt, ohne es getestet zu haben,darauf schließen, dass:
cmd.exe /C script.xyz
den Script ohne die Pause aufruft.
Neues Projekt: Cosvalley.de - Deine Cosplaycommunity

Benutzeravatar
kuru
10 Bit
Beiträge: 1032
Registriert: Do Dez 04, 2008 09:13

Re: Befehl für Programm ohne Pausen öffnen

#4 Beitrag von kuru » Di Sep 29, 2009 18:06

Würde das nicht einfach nur das Fenster schließen, nachdem der Befehl abgearbeitet wurde?

Benutzeravatar
Screeny
11 Bit
Beiträge: 3903
Registriert: Di Okt 14, 2008 18:48
Wohnort: Wiesbaden

Re: Befehl für Programm ohne Pausen öffnen

#5 Beitrag von Screeny » Di Sep 29, 2009 18:09

Hmm, ist ein Argument.

Aber:
Du könntest theoretisch dann folgenden Befehl nutzen:

cmd.exe /C test.bat

in der test.bat steht dann:
@echo hallo test!
@echo off
ping 127.0.0.1 -n 30 >nul
Dann würde die Ausgabe so aussehen:
CMD startet..arbeitet Befehle in test.bat ab, zeigt "hallo test!" an und wartet dann rund 30 Sekunden.
Dann geht das Fenster zu ;)

Edit: Getestet und läuft :)
Neues Projekt: Cosvalley.de - Deine Cosplaycommunity

Benutzeravatar
kuru
10 Bit
Beiträge: 1032
Registriert: Do Dez 04, 2008 09:13

Re: Befehl für Programm ohne Pausen öffnen

#6 Beitrag von kuru » Di Sep 29, 2009 18:18

Das bringt ihm was? Er will, wenn ich das richtig verstanden habe, dass sein Programm durchläuft, ohne, dass er eine "beliebige Taste zum Fortsetzen" drücken muss.
Dein Beispiel impliziert, dass der Befehl schon abgearbeitet wurde, wie es ja so schön in der Befehlsreferenz steht.

Code: Alles auswählen

/C Führt den Befehl in der Zeichenfolge aus und endet dann.

Benutzeravatar
Screeny
11 Bit
Beiträge: 3903
Registriert: Di Okt 14, 2008 18:48
Wohnort: Wiesbaden

Re: Befehl für Programm ohne Pausen öffnen

#7 Beitrag von Screeny » Di Sep 29, 2009 18:21

Vielleicht sollte er uns mal sagen, welchen Befehl er abarbeiten möchte ;)

Ich habe das jetzt so verstanden, dass nach dem Befehl diese Meldung erscheint. Dann wäre meine Lösung durchaus berechtigt ^_^
Neues Projekt: Cosvalley.de - Deine Cosplaycommunity

Benutzeravatar
kuru
10 Bit
Beiträge: 1032
Registriert: Do Dez 04, 2008 09:13

Re: Befehl für Programm ohne Pausen öffnen

#8 Beitrag von kuru » Di Sep 29, 2009 18:25

auszuführen ohne die pausen ("Belibige Taste drücken..."usw) oda das mein programm dann irwie die tasten drück

Benutzeravatar
Screeny
11 Bit
Beiträge: 3903
Registriert: Di Okt 14, 2008 18:48
Wohnort: Wiesbaden

Re: Befehl für Programm ohne Pausen öffnen

#9 Beitrag von Screeny » Di Sep 29, 2009 18:27

kuru hat geschrieben:
auszuführen ohne die pausen ("Belibige Taste drücken..."usw) oda das mein programm dann irwie die tasten drück
Welcher Befehl ruft denn einen Instanz von cmd.exe auf und verlangt vor dem Ausführen eine Tastenkombi?! :huh:
Naja, warten wir mal ab, bis er sich zu Wort meldet...
Neues Projekt: Cosvalley.de - Deine Cosplaycommunity

Benutzeravatar
kuru
10 Bit
Beiträge: 1032
Registriert: Do Dez 04, 2008 09:13

Re: Befehl für Programm ohne Pausen öffnen

#10 Beitrag von kuru » Di Sep 29, 2009 18:34

Der Shellscript-Befehl PAUSE macht genau das: Warten innerhalb des scripts, bis der user eine Eingabe macht, den guten, alten ANY KEY drückt.
Aber ja, bevor wir uns hier die Haare ausraufen, einfach mal abwarten.

Benutzeravatar
Screeny
11 Bit
Beiträge: 3903
Registriert: Di Okt 14, 2008 18:48
Wohnort: Wiesbaden

Re: Befehl für Programm ohne Pausen öffnen

#11 Beitrag von Screeny » Di Sep 29, 2009 19:05

Ja, aber es wäre doch ziemlich hirnrissig erst den Befehl PAUSE anzuwenden und dann zu fragen, wie man diesen automatisieren kann, oder? :D :D
Neues Projekt: Cosvalley.de - Deine Cosplaycommunity

Benutzeravatar
Funs
5 Bit
Beiträge: 47
Registriert: So Jan 20, 2008 18:34

Re: Befehl für Programm ohne Pausen öffnen

#12 Beitrag von Funs » Mi Sep 30, 2009 12:33

Also, ich habe mir ein Programm gemacht (c++), jetz habe ich eine exe, die ich am anfang MEINES programmes starten möchte und ohne pausen durchlaufen soll.
Mit pausen sieht dei zeile bei mir so aus:

Code: Alles auswählen

ShellExecute(NULL, "open", "abcde.exe", NULL, NULL, SW_SHOW);
nur leider sind da jetz also die pausen drin, die den weiteren verlauf MEINES programms erheblich unübersichtlich machn....

Benutzeravatar
Thrake
11 Bit
Beiträge: 2400
Registriert: Do Aug 25, 2005 21:08
Wohnort: München
Kontaktdaten:

Re: Befehl für Programm ohne Pausen öffnen

#13 Beitrag von Thrake » Mi Sep 30, 2009 12:47

ich weiß niicht, welche Libs du verwendest, aber sowas kann man angeblich ganz gut in QT4 mit QProcess machen, ist aber keine einfache sache (QOctave nutzt das z.b.).

Keine chance, an den Quellcode zu kommen?

Benutzeravatar
boeseronkel2k
Forum Team
Forum Team
Beiträge: 976
Registriert: So Okt 09, 2005 14:24
Wohnort: 127.0.0.1:/
Kontaktdaten:

Re: Befehl für Programm ohne Pausen öffnen

#14 Beitrag von boeseronkel2k » So Jul 25, 2010 17:42

Ansonnsten könntest du mit der WinAPI die Tasten emulieren

FindWindowEx -> Fenster Suchen (Classname und Window Name kann man z.B. mit dem Programm Spy++ herausfinden)
SendInput -> Tastatureingaben schicken
8 Bits are enough for me, this is not where I should be!

Kleines Blog

Antworten

Zurück zu „C++“

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast