AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Delphi KeyboardHook innerhalb eines Threads erstellen?
Thema durchsuchen
Ansicht
Themen-Optionen

KeyboardHook innerhalb eines Threads erstellen?

Ein Thema von Memnarch · begonnen am 14. Okt 2012 · letzter Beitrag vom 28. Dez 2012
 
Benutzerbild von Memnarch
Memnarch

Registriert seit: 24. Sep 2010
737 Beiträge
 
#1

KeyboardHook innerhalb eines Threads erstellen?

  Alt 14. Okt 2012, 17:00
Moin,
Hänge gerade etwas fest.
Ich arbeite an einem EMulator, der innerhalb eines Threads läuft.
Es handelt sich praktisch um nen komplettes SDK. Es besteht aus einem Compiler+Assembler, IDE und dem Emulator selber.
Aus der IDE kann der geschriebene SOurce direkt compiliert und der Emulator gestartet werden. DAmit der Emulator nicht blockiert, läuft er halt in einem eigenen Thread.

Der soll jetzt aber auch Keyinput mitbekommen. Zuerst dachte ich an SetWindowsHookEX.

Dieses würde am anfang der Execute-Methode des threads ausgeführt(damit auch die richtige ThreadID vorhanden ist)
Aber innerhalb des Threads funktioniert das nicht so wirklich. Erlichgesagt wird die Callback nie aufgerufen.
Wird auch für einen Hook ein extra WindowHandle+MessageLoop gebraucht?

Delphi-Quellcode:
FKeyHook := SetWindowsHookEx(WH_KEYBOARD,
                           @LHookProc,
                           HInstance,
                           ThreadID);
EDIT: LHookProc ist eine globale function, die intern dan über eine Globale variable auf den emulator zugreift und dessen methode aufruft.

MFG
Memnarch
Da man Trunc nicht auf einen Integer anwenden kann, muss dieser zuerst in eine Float kopiert werden
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:18 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz