C++ externes Programm starten+eingabe

manu123

Grünschnabel
Hallo Community,

Ich bin neu in der "Programmierszene", wir nehmen c++ gerade in der schule durch.
Ich wollte nun zuhause ein Programm schreiben das ein anderes Programm startet und dort eine Auswahl trifft.
Ich habe vergeblich in google gesucht, habe dort auch einige Bfehele gefunden wie shell execute usw. , Aber ich ich muss doch bestimmt auch variablen definieren oder auch bei #include was anderes hineinschreiben oder?
Es sollte so funktionieren:

Ich starte die exe, dann öffnet sich (am besten im hintergrund) das andere Programm.
Das Programm ist nur ein MSDOS Fenster in dem Gefragt wird Programm starten drücken sie die 1, Programm beenden 2, 3 Impressium.
Ich will die 1 auswählen.

Ist das leicht zu verwirklichen und wenn ja wie müsste man dies schreiben?

Ich habe es mit folgendem Befehl probiert aber ich brauche da bestimmt noch andere Befehle wie #include blabla usw.

WinExec("C:\\BACKUP\\dd.exe -m 31304",SW_SHOW);

Vielen Dank shconmal an jeden der überhaupt bis hier her gelesen hat.
Freue mich über jede sinnvolle antwort
manu123
 

deepthroat

Erfahrenes Mitglied
Hi.

Dafür sollte eigentlich eine einfache Batch-Datei ausreichen:
Code:
echo 1 | C:\BACKUP\dd.exe -m 31304
Das Gleiche könntest du auch mit der system Funktion aufrufen:
C:
#include <stdlib.h>

system("echo 1 | C:\\BACKUP\\dd.exe -m 31304");
Gruß
 

manu123

Grünschnabel
ahh ok habe diese batch datei angelegt.
echo1 wählt option 1 aus? is das richtig?

e// ok super funtioniert,
Meine nächste frage wäre ich will dies beim systemstart starten lassen, aber erst nach ca 3-5min. Ich habe vor die batch datei über ne registry zu starten weil ich autorun nicht verwenden möchte . Ich denke auch das dies gut möglcih ist aber kann ich dann dies auch mit der 5min verzögerung erreichen?
 
Zuletzt bearbeitet:

manu123

Grünschnabel
also ich habe es mit der batch datei mal probiert aber iwie geht das nicht recht.
Ich denke ich brauche waits, ich habe schon im Internet gesucht und da habe ich gelesen das die bei batch dateien nicht geht, habe ne Lösung nen Timer laufen zu lassen.

Habe nun noch folgenden Fragen

1. Ist es möglich eine Batch-Datei per registry beim Systemstart zu laden?
2. Ich würde dann nach ausführen der Batch datei einen Timer von ca 2-3Min laufen lassen, dann soll er die .exe im HIntergrund ausführen eins auswählen, wieder 10sek warten und sich dann selbst schliessen ist das möglich ohne das man etwas auf dem Bildschirm sieht? Wenn ja kann mir jmd grob so eine Batch Datei schrieben oder zumindest das Struktogram kurz erklären.


struktogram würde reichen z.b so


-reg führt batch datei aus (Befehl Hintergrund)
-Timer 2-3MIn
-echo 1 | C:\BACKUP\dd.exe -m 31304 (Am besten ohne das das schwarze Fenster shcnell aufblobbt) dann delay 10sek, Programm schliessen
-Ende Batch datei


Ich hoffe ich verlange nicht zuviel
Frohe Weihnachten euer manu123
 
Zuletzt bearbeitet: