Hi,
Wie kann man jegliche Art von Message Boxen (die, die bei unbehandelten Ausnahmen hochkommen) eines VC++ Programms deaktivieren. Das Programm soll auf keinen Fall auf einen User Input warten. Wenn es abstürzt, soll es abstürzen. Ein watchdog soll überwachen, ob das Programm läuft. Wenn es nicht läuft, soll der watchdog das Programm starten.
Hat jemand eine Idee dazu?
WinNT, VC++
Programmieren - alles kontrollieren 4.938 Themen, 20.667 Beiträge
Hi,
Vielen Dank für Deine Anregung.
Hab selbst noch mal gekuckt. Die catch(...) Anweisung sollte normalerweise reichen. Für krasse Fäller (z.B. wenn man einfach ein "throw;" statement irgendow im code plaziert):
Um ganz sicher zu gehen, kann man die Funktionen
"set_unexpected" und "set_terminate" aufrufen (muß für jeden Thread getan werden!) und eine neue Terminierungsroutine festlegen (eine die kein Fenster aufmacht). Allerdings müßte man den allokierten Speicher dort freigeben.
Die "Terminierungsroutinen" enthalten ein "exit(-1);" statement.
Wenn man nun unter Windows (nicht in der Entwicklungsumgebung! - Hier fängt der Debugger alle Exceptions ab!) das Programm startet kommt kein Fenster mehr hoch bei Fehlern...
Fürs überwachen kuck ich noch.
Remote starten irgendwie über DCOM.
Vielen Dank!