Konsolenfenster nicht schließen
-
Hi,
ich rufe per ShellExecute() irgendein Konsolenproggi auf. Am Ende schließt es sich jedoch. Meistens stört das ja nicht, aber manchmal will man das so nicht. Wie kann ich das Schließen verhindern?
-
nimm die conio.h und getch() zum schluss...
dann schließt es nach eingabe (wäre eine möglichkeit)ach so .. halt, es ist kein selbstgeproggtes konsolenprogramm ? oder schon eins?
dann ist es natürlich was anderes...
[ Dieser Beitrag wurde am 19.01.2003 um 00:14 Uhr von elise editiert. ]
-
Original erstellt von elise:
ach so .. halt, es ist kein selbstgeproggtes konsolenprogramm ? oder schon eins?Ne. Das ist irgendeins. Es sollte schon beendet werden. In der Titelleiste sollte dann stehen: "Beendet - [Name der Anwendung]".
-
versuch mal mit
option /k
beim proton ist es damit offen..ps: dann aber ausführlich mit command.com /k
oder eben was du für ein betriebssystem hast (bei nt gehts glaub ich mit cmd /k )[ Dieser Beitrag wurde am 19.01.2003 um 01:02 Uhr von elise editiert. ]
-
Original erstellt von elise:
**option /k
**Ist das eine Linker-Option? Mit sowas kenne ich mich nicht so aus, da ich nur aus der IDE heraus kompiliere und linke. Könntest du das näher erläutern? Würd mich freuen.
-
siehe obn , habe noch was dazugeschrieben..
denke - nur eine idee... command.com /k deinprogramm
<edit>logisch com</edit>
[ Dieser Beitrag wurde am 19.01.2003 um 01:03 Uhr von elise editiert. ]
-
OK, danke. Jetzt muss ich nur noch herausfinden, welches OS am Laufen ist. Also
WIN 9x/ME: Command.com
Win NT/XP/2000: Cmd.exe.
-
bei mir funzt es im moment leider nur mit dem "bösen" system.. dann bleibt es offen.. also parameter /k ist der richtige..
nur wie das dann mit shellexecute umgesetzt wird, vielleicht kriegst du das raus..
#include <windows.h> int main(){ // ShellExecute(NULL, "open", "c:\\command.com /k D:\\djgpp_test\\sys.exe", NULL, NULL, SW_SHOW); system ("c:\\command.com /k D:\\djgpp_test\\sys.exe"); }
-
ShellExecute(NULL, "open", "c:\\command.com /k D:\\djgpp_test\\sys.exe", NULL, NULL, SW_SHOW);
Ging das bei dir nicht?
-
nee .. aber es war wohl einfach zu spät