Einzelnen Beitrag anzeigen

User1234

Registriert seit: 7. Jan 2006
5 Beiträge
 
#1

WH_CBT hook: Message verändern

  Alt 19. Feb 2006, 13:56
Ich habe einen WH_CBT-hook eingerichtet in einer dll. In der dll fange ich die Message HCBT_MINMAX ab und überprüfe anschliessend ob ein Fenster minimiert wird (if loword(lParam) = SW_MINIMIZE then ...). Bis hier hin geht noch alles ohne Probleme. Der Code geht sogar. Ich weiss nun lediglich nicht, wie ich die Message so verändern kann, dass ein Fenster nicht minimiert wird sondern immer maximiert. Mir ist klar, dass ich dafür irgendwie SW_MINIMIZE zu SW_MAXIMIZE abändern muss. Wie kann ich nun den Parameter lParam so ändern, dass immer wenn man ein Fenster minimieren will es maximiert wird?

Teile des Quellcodes bis jetzt:

Delphi-Quellcode:
...
SetWindowsHookEx(WH_CBT, @CBTHookFunc, HInstance, 0);
...
Die Funktion CBTHookFunc sieht so aus:

Delphi-Quellcode:
function CBTHookFunc(nCode: Integer; wParam: WPARAM; lParam: LPARAM): LResult; stdcall;
begin
  {überprüfen ob Fenster Maximiert oder Minimiert wird}
  if nCode = HCBT_MINMAX then begin

    {Überprüfen ob Fenster minimiert wird}
    if loword(lParam) = SW_MINIMIZE then begin
      {Code zum ändern von SW_MNIMIZE zu SW_MAXMIZE, aber wie?}


    end;

  end;
  result := CallNextHookEx(cbthhook, nCode, wParam, lParam);

end;
Danke für eure Hilfe
  Mit Zitat antworten Zitat