erwartetes beenden eines programmes
-
ich suche eine möglichekeit um ein programm definiert zu beenden wenn man auf x drückt(oben rechts)
normal kann man das ja zb mit 4ch programmieren(esc)
aber wie geht das in diesem falle?
-
Ok. Leider ist deine Frage sehr ungenau formuliert. Daher habe ich aber zunaechst einige Fragen:
1. Was willst du erreichen/wo genau liegt dein Problem?
2. Wo ist die Verbindung zum Themengebiet "Assembler"?
3. Fuer welches System/OS und mit welcher API programmierst du?
4. Mit welcher Programmiersprache?
-
1. Das Programm weißt einen Fehler auf und muss beendet werden... Das ist die Nachricht, wenn ich auf x drücke. Dies möchte ich aber vermeiden und somit das x als programmende definieren
2.Die ist ja klar
3.Win
4.Assembler
-
ich erzähl mal, was ich neulich gemacht hab.
ist aber c++ und konsole.
ich will nen sehr rechenintensiven job laufen lassen und der soll die zwischenergebnisse vor dem abbruch (durch strg+c oder runterfahren) speichern.volatile int killed=0; static BOOL WINAPI win32SignalHandler(DWORD sig){ switch(sig){ case CTRL_C_EVENT: case CTRL_BREAK_EVENT: case CTRL_CLOSE_EVENT: case CTRL_LOGOFF_EVENT: case CTRL_SHUTDOWN_EVENT: killed=1; return TRUE; } return FALSE; } int createSigHandler(){ SetConsoleCtrlHandler(win32SignalHandler,TRUE); return 0; } static int r=createSigHandler();
und im prog muß ich immer mal wieder (nicht gerade in den innersten schleifen, sondern eher so, daß zur not auch mal 10 sek gewartet wird aufs programmendeerkennen)
if(killed) return 1;
oder sowas machen.
machte nicht konsole, dann kriegste ne noemale message geschickt, daß dein prog beendet werden soll.
-
in wie fern hilft mir das nun?
-
Das kannst du wohl nur selbst beantworten.
Nochmal ein paar kleine Tipps:
1.Das Beispiel von volkard kann man auch problemlos in Assembler umsetzen.
2.Je genauer deine Fragestellung und Problembeschreibung, desto hoeher ist die Wahrscheinlichkeit, wirklich hilfreiche Antworten zu bekommen.