AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

globaler Tastatur API-Hook

Ein Thema von michi101200 · begonnen am 12. Jun 2008 · letzter Beitrag vom 12. Jun 2008
Antwort Antwort
michi101200

Registriert seit: 24. Apr 2008
Ort: Ahaus
19 Beiträge
 
Delphi 6 Professional
 
#1

globaler Tastatur API-Hook

  Alt 12. Jun 2008, 08:33
Hallo,

als erste will ich sagen dass ich kein Keylogger schreiben will.

Sinn an der ganzen Sache ist, wenn ich in einem Textfeld von irgendeinem Programm bin z.B. im Artikelnummer eines ERP-System und dann die Tasten Strg + Alt + S drücke, dass dann ein anderes Programm gestartet wird und als Parameter der Inhalt des Textfeldes steht (in dem Beispiel wäre es die Artikelnummer).

Als erstes habe ich eine DLL erzeugt mit dem globalen Hook. Als zweiten Schritt habe ich dann ein Dienst programmiert der automatisch gestartet wird und die DLL dann lädt.

Das ganze funktioniert 100% unter Windows XP aber dann habe ich das ganze unter Vista getestet und da kann ich nur den Dienst installieren und starten aber er macht garnichts.

Ich habe schon seit Tagen mich damit beschäftigt und komme einfach nicht weiter.

Wisst ihr warum dass unter XP klappt und unter Vista nicht?

PS.
Ich bin ja noch neu in diesem Forum deswegen wäre noch meine Frage nebenbei:
Da ich ja relativ einen langen Quelltext habe, soll ich den dann im Anhang anhängen oder kann ich den ruhig hier reinsetzten?

Danke schonmal im Voraus
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.195 Beiträge
 
Delphi 10.4 Sydney
 
#2

Re: globaler Tastatur API-Hook

  Alt 12. Jun 2008, 08:52
Zitat von michi101200:
Als erstes habe ich eine DLL erzeugt mit dem globalen Hook. Als zweiten Schritt habe ich dann ein Dienst programmiert der automatisch gestartet wird und die DLL dann lädt.

Das ganze funktioniert 100% unter Windows XP aber dann habe ich das ganze unter Vista getestet und da kann ich nur den Dienst installieren und starten aber er macht garnichts.

Ich habe schon seit Tagen mich damit beschäftigt und komme einfach nicht weiter.

Wisst ihr warum dass unter XP klappt und unter Vista nicht?
Ganz einfach. Bis XP haben Dienst bei aktivieren des Hakens "Interaktion mit Desktop" zugriff auf den Desktop (und damit die gestarteten Programme) des Users. Da dies ein sehr große potentielle Sicherheitslücke ist (Firewall per SendMesssage umkonfiguriet/deaktiviert und Icons in TNU übermalt) ist ab Vista generell ohne Registry-Hacks nicht möglich und sollte man dem Kunden auch nicht zumuten. Du wirst deine Lösung also wieder Dienste-Frei machen müssen.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
michi101200

Registriert seit: 24. Apr 2008
Ort: Ahaus
19 Beiträge
 
Delphi 6 Professional
 
#3

Re: globaler Tastatur API-Hook

  Alt 12. Jun 2008, 08:53
Danke.
Jetzt versteh das wenigstens.

Gibt es denn dann eine andere Lösung?
  Mit Zitat antworten Zitat
12. Jun 2008, 09:15
Dieses Thema wurde von "Sharky" von "Neuen Beitrag zur Code-Library hinzufügen" nach "Sonstige Fragen zu Delphi" verschoben.
Ist ja kein Beitrag zur Code-Library
alzaimar
(Moderator)

Registriert seit: 6. Mai 2005
Ort: Berlin
4.956 Beiträge
 
Delphi 2007 Enterprise
 
#5

Re: globaler Tastatur API-Hook

  Alt 12. Jun 2008, 09:40
Hat Bernhard doch gesagt: Ohne Dienst. Ich hab einfach eine kleine Applikation im Autostart, die meine Hook-DLL lädt und im Tray sitzt (dann kann man sie besser kontrollieren / abschießen/ konfigurieren).
"Wenn ist das Nunstruck git und Slotermeyer? Ja! Beiherhund das Oder die Flipperwaldt gersput!"
(Monty Python "Joke Warefare")
  Mit Zitat antworten Zitat
michi101200

Registriert seit: 24. Apr 2008
Ort: Ahaus
19 Beiträge
 
Delphi 6 Professional
 
#6

Re: globaler Tastatur API-Hook

  Alt 12. Jun 2008, 09:57
Hast du das auch unter Vista?

Hab grad etwas ähnliches versucht.
In meiner Applikation setzte ich Application.ShowMainForm auf False.

Dass klappt auch aber bei Vista kommt wieder die schöne UAC Meldung.
Wenn ich dass dann im Autostart lege, dann beim starten die Meldung dass das Programm geblockt wurde.

Ist das auch beim Tray Icon?

Ich probier das mal.

DANKE!!!
  Mit Zitat antworten Zitat
alzaimar
(Moderator)

Registriert seit: 6. Mai 2005
Ort: Berlin
4.956 Beiträge
 
Delphi 2007 Enterprise
 
#7

Re: globaler Tastatur API-Hook

  Alt 12. Jun 2008, 10:02
Nee, ich habs nicht unter Vista, aber grundsätzlich sollte das schon gehen. Aber die UAC nervt fatal, die hab ich bei mir ausgebaut (is natürlich keine Lösung...)
"Wenn ist das Nunstruck git und Slotermeyer? Ja! Beiherhund das Oder die Flipperwaldt gersput!"
(Monty Python "Joke Warefare")
  Mit Zitat antworten Zitat
michi101200

Registriert seit: 24. Apr 2008
Ort: Ahaus
19 Beiträge
 
Delphi 6 Professional
 
#8

Re: globaler Tastatur API-Hook

  Alt 12. Jun 2008, 10:05
Klaaaaapt!!!

Ich hab dass jetzt ohne Try Icon gemacht sondern ich hab nur in FormCreate Application.ShowMainForm := False; und danach lad ich die DLL

Das klappt auch unter Vista ohne irgendeine UAC Meldung. Die Meldung kamm noch da ich immernoch ein Manifest eingebaut hatte aber ich braucht das ja garnicht mehr.

Danke für eure Antworten
  Mit Zitat antworten Zitat
Antwort Antwort


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:08 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz