Hallo wschrabi,
der MouseHook wird soviel helfen, wie weit du ihn ausgebaut hast.
Der kann in 7-9 Variationen aufgebaut werden. Was du eigentlich
bräuchtest wäre der WH_JOURNALRECORD, nicht der WH_MOUSE oder
WH_MOUSE_LL. Nur:
Zitat:
Journaling Hooks APIs are unsupported starting in Windows 11 and will be removed in a future release. Because of this, we highly recommend calling the SendInput TextInput
API instead.
Außerdem, alle Hooks der SetWindowsHookExW Funktion sind nicht
Debugfähig unter Delphi
IDE (getestet von mir bis Delphi 2009).
Läuft der Debug-Pointer in die HOOKPROC, hängt das Betriebssysten sich auf, keine Tasten funktionieren mehr, auch
die Maus nicht. Weiterer Problempunkt: Drücken von Klammeraffengriff [Strg + Alt + Entf] entfernt den Hook aus dem
System. Es läuft auf Blindprogrammierung hinaus ohne eine
Möglichkeit die Ursache von Fehlern finden zu können. Alles nur nach Try & Error.
Dein angefragter Fall ist äußerst aufwendig, leider.
Ich könnte nur deinen Code anschauen und Vermutungen anstellen,
warum was nicht funktioniert. Alles in allem ist das Experten-Programmierung und kein
RAD (Rapid Application Development).
Was ich gemacht habe, im gleichen Fall Screenshot, ist ein
SysHotKey, ein systemweiter Hotkey [Strg + Shift + y].
Warum? Die Screenshot-Anwendung muss während des Shots FormMain.Visible:= false; minimiert in die Taskleiste reicht nicht, sonst wird der Screen samt Screenshot-Anwendung fotografiert. Das will man nicht! Dann:
Code:
repeat
t2:= GetTickCount;
Sleep(10);
until t2 - t1 > 500;
Nach dem Screenshot muss die Screenshot-Anwendung wieder FormMain.Visible:= true. Weiter, der Mouse-Cursor sollte in den Shot. Dazu hat Renate Schaaff (Gruß an sie) was gepostet. Sie hat es etwas anders gelöst als ich, aber funktionierend.
Der Vorteil von SysHotKey ist nur, er hat funktioniert, während alle anderen Lösungen versagt haben, aus unterschiedlichsten Gründen. Ich könnte gerne meinen Screengrabber zu Verfügung stellen, siehe Anhang Hilfe.pdf. Das komplette System Delphi 2009 ist jedoch 40 MB groß und hat davon 30 MB Komponenten, die installiert werden müssen.
Wenn du dir das alles antun möchtest, deine Entscheidung.
Liebe Grüße
Klaus Schaaff