N
merker schrieb:
Nobuo T schrieb:
Ist das fuer Win9x normal?
Ja, das ist normal so. Das ist aber auch unter XP so, wenn man versucht, die Konsole über das Systemmenü zu schliessen.
Obwohl unter XP zusätzlich der eigene Handler aufgerufen wird, erscheint trotzdem das Anwendung-schliessen-Fenster.
Laut msdn nur, wenn der letzte default-Handler aufgerufen wird - und das ist genau das Verhalten, das ich unter XP auch beobachtet habe: Wenn ich in meiner Handler-Funktion mit ExitProcess aussteige, wird das Programm einfach beendet, es erscheint kein Anwendung-schliessen-Fenster, die Konsole wird geschlossen.
merker schrieb:
Nobuo T schrieb:
Was gibt es fuer alternative Methoden, um das Schliessen der Konsole zu behandeln?
Da gibt es keine weiteren. Um aber das Schliessen via Systemmenü zu verhindern, muss man das Handle des Konsolenfensters finden und dann die entsprechenden "SysMenüItems" deaktivieren oder löschen.
Das ist aber "übelste Frickelei".
Ich will es gar nicht verhindern oder deaktivieren - ich will nur geordnet aussteigen koennen und nicht dieses nervige Frage-Fenster angezeigt bekommen.
SideWinder schrieb:
Das Handle des Konsolenfensters ist sehr einfach via GetConsoleWindow(), allerdings bin ich mir gerade nicht sicher, ob die Funktion sich bereits in der DLL befindet - auf jeden Fall musst du sie selbst rausladen, deklariert ist sie erst ab Win2k (Define 0x0500)
Danke, aber damit hat sich der Vorschlag dann schon wieder erledigt, da das Problem, wie gesagt, ueberhaupt nur in <Win2k auftritt.
SideWinder schrieb:
Vorher musst du frickeln, ja, die Konsole ist dafür nicht ausgelegt.
Das waere doch ein beachtlicher Mangel, wenn Konsolen-Programme beim Schliessen der Konsole tatsaechlich nur auf die harte Tour beendet werden koennten.