Hallo Leute, ich hab mal zwei Fragen. Erstens, gibt es eine Möglichkeit unter Visual C++ 6.0 den Standard-"Datei Öffnen" Dialog oder Verzeichnisauswahl-Dialog unter C (!!) ohne Benutzung der MFC aufzurufen ? Also ähnlich wie MessageBox nur eben als Datei-Auswahldialog ? Meine zweite Frage ist : Habe ich die Möglichkeit zu verhindern bzw mitzubekommen das mein Konsolen-Programm ge-X't wird ? Also ähnlich wie man das unter Delphi kennt das man das OnClose Ereignis abfangen kann und evtl eine Frage (z.b. per MessageBox) zu stellen ob das Programm wirklich beendet werden soll ? Ich bin mir relativ sicher das das unter ner Konsole nicht geht, aber vllt gibts ja doch ne Möglichkeit dazu. Wäre schön wenn mir da jmd weiterhelfen könnte.
GetOpenFileName http://msdn.microsoft.com/en-us/library/windows/desktop/ms646927(v=vs.85).aspx SetConsoleCtrlHandler http://msdn.microsoft.com/en-us/library/windows/desktop/ms686016(v=vs.85).aspx
Ja coool .... Vielen dank. Hatte zwar irgendwie im Hinterkopf das es mit dem OpenFileDialog auch über "normale" API-Funktionen gehen muß, und wusste auch das man nen Handler für die Console setzen konnte, hab aber nicht damit gerechnet das damit auch das X-en abgefangen werden kann. Das hilft mir schon enorm weiter. Danke schön :-)
So, ich hab das mal mit dem ConsoleCtrlHandler ausprobiert und es klappt. Das Programm wird nicht mehr beendet bzw ich kann noch nachfragen ob das Programm wirklich beendet werden soll. Allerdings kommt nach 2s etwa die "Programm beenden"-Meldung von Windows (also ähnlich wenn sich ein Task aufgehängt hat). Gibt es eine Möglichkeit das diese Meldung unterdrückt wird ? Oder hab ich bei dem ConsoleCtrlHandler was falsch verstanden ?
Was willst du überhaupt erreichen? Wenn jemand das X drück dann will er auch dein Programm schließen. Mit den handler hast du die möglichkeit das Programm ordentlich zu beendet. Wenn du Programm scheiben willt die nicht beendet werden soll, dann schreibt man dafür einen Dienst.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.