ich habe zu diesem Thema schon viel im Internet gelesen, jedoch keine Lösung gefunden. Aber vielleicht hat ja hier noch jemand eine Idee:
Ich versuche zu verhindern, dass man ein Fenster über den X-Button von Windows schließen kann. Erstmal an einem selbst erstellen Programm, später soll dies für ein fremdes Fenster funktionieren. Ich habe definitiv schon Programme gesehen, bei denen dieser Button deaktiviert war, aber mit der BorderIcons-Eigenschaft von Lazarus bekomme ich es allenfalls hin, dass alle Buttons weg sind.

Dann habe ich es mit Hooks versucht (Weil viele hier das nicht leiden können, lasse ich mal den Quelltext weg): Ich setze zweimal einen Hook mit WH_CALLWNDPROC. Das Programm enthält einen Timer, der nach einer Sekunde eine Bool-Variable auf true setzt und dann per SendMessage(Handle,WM_CLOSE,0,0) das Fenster schließt. Sobald die Bool-Variable true ist, werden ALLE empfangenen Messages (lParam) in eine Datei geschrieben; in der OnClose-Eigenschaft der Form dann noch ein [recived]. In der Datei steht dann:
Code: Alles auswählen
[CallWndProc1: 33029148] [CallWndProc2: 33028788] [received]
Code: Alles auswählen
[received]

Anscheinend hat Windows hier eine zusätzliche Sicherheit eingebaut...
Ich habe irgendwo gelesen, dass man eine Form so einstellen kann, dass sie nicht auch diesen Befehl reagiert - weiß dazu jemand Näheres?
Und davon abgesehen: Normaler Weise bekommen die Windows-Buttons (Minimieren, Maximieren/Normalisieren und Schließen) beim überfahren mit der Maus eine Aura (Win 7). Bei Opera und Lazarus und allen Programmen, die ich mit Lazarus erstellt habe, beobachte ich jedoch, dass diese Aura sofort wieder verschwindet. Bei Mausbewegungen auf diesen Buttons flackert es dann...
Hat von euch jemand dieses Phänomen schon beobachtet?