AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Start eines Keyboard-Hooks aus einem Thread
Thema durchsuchen
Ansicht
Themen-Optionen

Start eines Keyboard-Hooks aus einem Thread

Ein Thema von hesch21 · begonnen am 7. Sep 2012 · letzter Beitrag vom 13. Sep 2012
Antwort Antwort
Seite 2 von 2     12   
hesch21

Registriert seit: 31. Aug 2004
Ort: Basel
114 Beiträge
 
Delphi XE2 Enterprise
 
#11

AW: Start eines Keyboard-Hooks aus einem Thread

  Alt 10. Sep 2012, 15:34
Das Programm, welches den Hook setzt, wird von einem Dienst über CreateProcessAsUser gestartet. Von da müssten die Rechte eigentlich genügen, zumal der Bildschirmschoner selbst im Normalfall unter dem angemeldeten Benutzer läuft. Mein Programm kann ich ja auf dem Screen-Saver-Desktop starten und das läuft dort problemlos, nur eben der Hook nicht. Eigentlich glaube ich kaum, dass der Hook nur gerade auf diesem Desktop andere Rechte für nicht mal alle Bildschirmschoner benötigt. Aber ich werde es trotzdem mal mit einem Starter-Programm und Elevation auf Administratoren-Rechte versuchen. Zum Glück gibt es ja hierfür die JEDI-API. Da ist bei den Examples ein fast fertiges Starterprogramm mit Elevation.
Heinz Schneider
  Mit Zitat antworten Zitat
delphinub23

Registriert seit: 27. Okt 2010
Ort: Chemnitz
110 Beiträge
 
Delphi XE3 Professional
 
#12

AW: Start eines Keyboard-Hooks aus einem Thread

  Alt 12. Sep 2012, 13:56
Zitat:
Das Programm, welches den Hook setzt, wird von einem Dienst über CreateProcessAsUser gestartet. Von da müssten die Rechte eigentlich genügen, zumal der Bildschirmschoner selbst im Normalfall unter dem angemeldeten Benutzer läuft. Mein Programm kann ich ja auf dem Screen-Saver-Desktop starten und das läuft dort problemlos, nur eben der Hook nicht. Eigentlich glaube ich kaum, dass der Hook nur gerade auf diesem Desktop andere Rechte für nicht mal alle Bildschirmschoner benötigt. Aber ich werde es trotzdem mal mit einem Starter-Programm und Elevation auf Administratoren-Rechte versuchen. Zum Glück gibt es ja hierfür die JEDI-API. Da ist bei den Examples ein fast fertiges Starterprogramm mit Elevation.
Konntest du es schon testen?
  Mit Zitat antworten Zitat
hesch21

Registriert seit: 31. Aug 2004
Ort: Basel
114 Beiträge
 
Delphi XE2 Enterprise
 
#13

AW: Start eines Keyboard-Hooks aus einem Thread

  Alt 12. Sep 2012, 14:36
Sorry, bin etwas unter Druck!
ja, ich hab's getestet, leider ohne Erfolg. Auch mit expliziten Admin-Rechten klappt's nicht immer. Und dann bin ich noch auf einen Screen-Blanker (allerdings nicht von Microsoft) gestossen, der knallt irgendwie gleich mal alles ab, was auf WinSta0\Screen-Saver läuft, sobald er sich selbst beendet. Ganz hässlich. Aber so langsam komme ich zum Schluss, dass ich wieder mal den Support von Microsoft bemühen und halt die 400 Dollar aufwerfen muss. Ich habe keine Ahnung mehr, wo suchen.
Heinz Schneider
  Mit Zitat antworten Zitat
delphinub23

Registriert seit: 27. Okt 2010
Ort: Chemnitz
110 Beiträge
 
Delphi XE3 Professional
 
#14

AW: Start eines Keyboard-Hooks aus einem Thread

  Alt 12. Sep 2012, 15:41
Zitat:
...Mein Programm kann ich ja auf dem Screen-Saver-Desktop starten und das läuft dort problemlos...
Du startest den Screen-Saver-Desktop aus der Anwendung direkt, also nicht aus dem Hook-Thread?
Wenn ja, musst du dann nicht dem Thread noch den entsprechenden (Screen-Saver-Desktop) zuweisen?

SetThreadDesktop()

Keine Ahnung, ob´s was bringt. Hab nur gerade was davon gelesen...
Könnte ja sein, dass der Thread den Hook auf einem gesicherten Desktop ohne die o.g. Zuweisung nicht anlegen kann.
  Mit Zitat antworten Zitat
hesch21

Registriert seit: 31. Aug 2004
Ort: Basel
114 Beiträge
 
Delphi XE2 Enterprise
 
#15

AW: Start eines Keyboard-Hooks aus einem Thread

  Alt 13. Sep 2012, 09:14
Mach ich ja! Schau Dir mal den zweiten Codeteil in meinem ersten Post an. Dort ist testeshalber einfach 'Default' drin, weil ich den Hook im Thread nicht zum laufen gebracht habe, aber jetzt habe ich das natürlich längst wieder auf 'Screen-Saver' geändert.
Heinz Schneider
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


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 18:49 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