Einzelnen Beitrag anzeigen

Delphi-Laie

Registriert seit: 25. Nov 2005
1.474 Beiträge
 
Delphi 10.1 Berlin Starter
 
#16

Re: HILFE! Noch einmal der Tastaturhook

  Alt 6. Mai 2010, 11:09
So ganz verstehe ich Dich leider immer noch nicht.

Brachte mein Vorschlag, den Hook innerhalb der DLL zu starten, Dir nun einen spürbaren Fortschritt oder doch nicht?

Eines mußt Du auch bedenken (ich bezahlte diesbezüglich auch Lehrgeld): Bei DLL-Injektionen werden etliche Kopien dieser DLL an andere Prozesse erstellt. Globale Daten, die z.B. zum Injektionszeitraum vorlagen, existieren aber nur in der ursprünglichen DLL, in den Kopien sind diese Makulatur bzw. Schall und Rauch.

Es müssen also, um sicherzustellen, daß jede injizierte Kopie die richtigen Daten erhält, diese Daten zur Laufzeit dort hineingebracht werden, bzw. die DLL muß sich diese DLL beschaffen. Ich tat das mit externen Dateien. Nicht die eleganteste Lösung (im Vergleich mit der Interprozeßkommunikation), hat aber den Vorteil, daß man in der Menge der Daten flexibel bleibt.

Zusammengefaßt: Hookprogrammierung ist ekelhaft, aber eine durchaus bewältigbare Herausforderung. Wenn man es geschafft hat, freut man sich umso mehr.

Edit: Mir ist zudem immer noch nicht klar, wozu ein Timer der DLL gut sein soll, weil (Tastatur-)Hookprogrammierung genau wie vieles andere Außen(!)-Ereignisprogrammierung ist.
  Mit Zitat antworten Zitat