Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Virtuelle Maus/Tastatur auf Treiber Basis... (https://www.delphipraxis.net/98407-virtuelle-maus-tastatur-auf-treiber-basis.html)

OregonGhost 27. Aug 2007 19:28

Re: Virtuelle Maus/Tastatur auf Treiber Basis...
 
Zitat:

Zitat von christian_u
Mir ist kein weg bekannt an Tastatureingaben oder Mauseingaben ohne die Windows Messegeque zu kommen. Wie bitte soll also ein Programm inkompatibel dazu sein ?

z.B. GetAsyncKeyState, DirectInput, XInput? :)

DGL-luke 27. Aug 2007 19:46

Re: Virtuelle Maus/Tastatur auf Treiber Basis...
 
Und sehr viele Programme, insbesondere Online-Spiele schauen seeehr genau, wo ihr input herkommt bzw. benutzen möglichst fälschungssichere Methoden wie im post über mir genannt.
Gegen einen Treiber können die aber alle nix machen.

PS: Ich hoffe meine Anregung rutscht nicht weg aus den Augen des TO ;-)

Kedariodakon 28. Aug 2007 07:58

Re: Virtuelle Maus/Tastatur auf Treiber Basis...
 
Zitat:

Zitat von christian_u
Es dürfte um einiges einfacher sein Narichten an die entsprechenden Narichtenschleifen zu senden, ich weiss ja nicht was du vor hast aber um maus und Tastatur automatisch zu bedienen brauch man keinen Treiber.

In der Regel schon, aber eben nicht immer...

Zitat:

Zitat von christian_u
Mir ist kein weg bekannt an Tastatureingaben oder Mauseingaben ohne die Windows Messegeque zu kommen. Wie bitte soll also ein Programm inkompatibel dazu sein ?

Wie schon angesprochen genau aus dem Grund, dass es Software gibt, die Versucht mit allen Mitteln nicht automatisiert zu werden...
Dabei wird so tief ins System eingegriffen, dass meist nichts mehr geht, z.b. regiert Windows nicht mehr auf die Eingaben der eigenen Bildschirmtastatur... und und und...

Im Grunde ist diese Entwicklung auch ein Versuch meinerseitz sich weiterzubilden und mich mal mit der Treiberproblematik auseinander zu setzen. Da dabei möglichst was brauchbares rauskommen soll, hab ich mich dafür entschieden...

Zitat:

Zitat von DGL-luke
Es wäre extrem hübsch, wenn du das ganze so baust, dass man eine c-kompatible DLL schreiben kann (geht ja mit Delphi), in der man callbacks aus dem treiber implementiert (also events für mausbewegungen, klicks, etc. inklusive manipulationsmöglichkeit).

Ist so angedacht, da ich den Treiber für mehrere Sachen (Sprachen verwenden will)...
Ev. muß dann wer den Header übersetzen für Delphi, aber im Grunde wird die Schnittstelle wie auch der Treiber in C erstellt, sprich mit dem nötigen Wissen wird sie auch in Delphi verwendbar sein. :wink:

Zitat:

Zitat von DGL-luke
Natürlich hat man dann wieder einen generischen Treiber, mit allen nachteilen: Sicherheitsprobleme, Stabilitätsprobleme etc. etc., da werden viele dran rumkritteln ;-)

Möglich, man wird sehen...

Bye Christian

Relicted 28. Aug 2007 09:09

Re: Virtuelle Maus/Tastatur auf Treiber Basis...
 
Moin moin...

super projektidee! leider sind meine c kenntnisse "etwas" eingerostet... zu lange her sonst würde ich direkt meine hilfe anbieten.

falls du etwas infos zur treibererstellung haben magst:
http://www.codeproject.com/system/

dort findest du eine "kleine" einführung zu dem thema. könnte zumindest informativ werden.


gruß
reli

resolution 2. Sep 2007 15:17

Re: Virtuelle Maus/Tastatur auf Treiber Basis...
 
schönes projekt, könnte ich im moment dringend gebrauchen ;)

wenn ich dir helfen kann/du dir helfen lässt, dann sehr gerne :)

Olli 2. Sep 2007 15:35

Re: Virtuelle Maus/Tastatur auf Treiber Basis...
 
Zitat:

Zitat von christian_u
Also ich weiss gar nicht ob es jemals eigene Treiber für Tastaturen gab...

:shock: ... wie handhabst du deine Eingaben? Daß das mit dem BIOS Quark ist, weißt du? Im ProtectedMode hat das BIOS nämlich nur noch das zu melden was das OS ihm erlaubt (wenn überhaupt).

Zitat:

Zitat von Robert Marquardt
Das DDK enthaelt einen Kommandozeilencompiler. Das WDK laesst sich direkt bei Microsoft runterladen. Hier im Forum gibt es einen Thread fuer ein Addin in Visual Studio das die Integration bewerkstelligt. Man kann naemlich mit dem normalen C++ Compiler so einfach keinen Treiber uebersetzen.

http://ddkwizard.assarbad.net

Zitat:

Zitat von Kedariodakon
Und wo liegt nun der Unterschied zwischen DDK und WDK?

In der Aktualität. Im WDK ist mehr Doku und es ist das KMDF und das UMDF (kurz WDF) enthalten.

Zitat:

Zitat von Kedariodakon
Hinzu kommt, dass ich C und C++ lesen aber nur *stockend* schreiben kann

Dann laß es ;)

Zitat:

Zitat von Kedariodakon
Ich bin mir auch nicht sicher, wie komplex die ganze Sache wird, Hardware wird ja nicht angesprochen, da die Treiber nur virtuel arbeiten sollen...

Und woher kommt die Eingabe?

Zitat:

Zitat von Kedariodakon
Rauskommen soll eine Schnittstelle die man von außen bedienen kann ev. über pipes oder ähnliches, sofern das Treiber überhaupt zulassen...

Pipes, MMF, Inverted Call Model ... was du willst :mrgreen:

Zitat:

Zitat von Kedariodakon
Der erste Schritt wird wohl ein Maustreiber sein, da da je bedeutet weniger gebraucht wird als bei der Tastatur (*denk ich*)
Für eine Virtuelle Maus wär das die Bewegung der Maus (horizontal/vertikal) + Maus-down/-ups (Rechts, Mitte & Links) + Maus-Wheel

Wow, so simpel ist das? Tip: diverse Treiber sind als Beispiele im DDK/WDK enthalten. Schau die dir mal an.

Zitat:

Zitat von DGL-luke
@christian_u: Nur mit einem treiber kann man sich sicher sein, dass alle Programme die eingaben ohne murren annehmen.

@Kedariodakon: Es wäre extrem hübsch, wenn du das ganze so baust, dass man eine c-kompatible DLL schreiben kann (geht ja mit Delphi), in der man callbacks aus dem treiber implementiert (also events für mausbewegungen, klicks, etc. inklusive manipulationsmöglichkeit). Dann müsste sich nur einer (du nämlich :P ) die arbeit machen, sich mit C++ und dem WDK/DDK rumzuschlagen.
Natürlich hat man dann wieder einen generischen Treiber, mit allen nachteilen: Sicherheitsprobleme, Stabilitätsprobleme etc. etc., da werden viele dran rumkritteln ;-)

Klingt wie das Mißverständnis, welches schon bei Hooks vorherrscht: ala "Wie kann ich mit meinem Tastaturhook Tastenanschläge an XYZ schicken" :shock:

Wie eine Tastatur funzt, wißt ihr aber schon? Interrupts usw.?

Zitat:

Zitat von christian_u
Mir ist kein weg bekannt an Tastatureingaben oder Mauseingaben ohne die Windows Messegeque zu kommen. Wie bitte soll also ein Programm inkompatibel dazu sein ?

Dann aber bitte nochmal schnell nachlesen gehen ;)

Zitat:

Zitat von Relicted
falls du etwas infos zur treibererstellung haben magst:
http://www.codeproject.com/system/

dort findest du eine "kleine" einführung zu dem thema. könnte zumindest informativ werden.

Ich empfehle zuvor das Buch von Walter Oney (zu WDM, von Microsoft Press), das Buch von OSR (wenn es das noch gibt). Beide enthalten kleinere Fehler, und das von OSR bespricht nur eine frühe Beta von Windows 2000, aber im Gegensatz zu Linux hat Windows eine stabile Treiber-API) und das Buch von Solomon und Russinovich zum Thema Windows Internals. Auch gut: WDK runterladen und sich selber anhand der Docs und der Beispiele einarbeiten. Besonders wichtig, sich bei den OSR-Mailinglisten einzuschreiben.


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:14 Uhr.
Seite 2 von 2     12   

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