Dann würde ich nach einer alternative für den Maushook suchen. Vermutlich kracht es bei dir so fürchterlich weil die kommunikation zwischen den hookinstanzen und deiner Anwendung nicht mehr funktioniert. Und nach Beschreibung aller Symptome wird es daran liegen das dein Formular recreated wird und somit ein neues
Handle bekommt.
Also am besten die ganzen Styles für das Fensterhandle etc. in CreateWnd (musst du überschreiben) setzen und mit dem Hook nicht über das Hauptfensterhandle kommunizieren sondern entweder ein extra
handle dafür anfordern oder eine bessere Variante wählen (zum Beispiel über PostThreadMessages, so kommen die Nachrichten auch über mehrere Desktops hinweg an)