Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Key-Events bei zweiter Tastatur (https://www.delphipraxis.net/45058-key-events-bei-zweiter-tastatur.html)

Savar 28. Apr 2005 19:38


Key-Events bei zweiter Tastatur
 
Hab an mein Notebook eine zweite Tastatur angeschlossen. Wie kann ich unterscheiden von welcher Tastatur ein Key-Event ausgelöst wird?

Savar 28. Apr 2005 20:00

Re: Key-Events bei zweiter Tastatur
 
Hmm, geht sowas überhaupt?

alcaeus 28. Apr 2005 20:02

Re: Key-Events bei zweiter Tastatur
 
Hallo Savar,

bitte "push" deinen Beitrag nicht ganz so schnell.
AFAIK geht das nicht, da das Programm ja nur die Tastatureingaben kriegt, die im Buffer liegen, und die Eingaben landen soviel ich weiss immer im gleichen Buffer. Also tippe ich auf "Nein".

Greetz
alcaeus

Savar 28. Apr 2005 20:09

Re: Key-Events bei zweiter Tastatur
 
Innerhalb von VCL gehts wohl kaum, aber vielleicht mit WinAPI?

SirThornberry 28. Apr 2005 20:47

Re: Key-Events bei zweiter Tastatur
 
auch api-mäßig nicht weil deine anwendung ja nur die KEY-Messages bekommt und darin ist nicht enthalten von welcher Tastatur der Key kommt

Mephistopheles 28. Apr 2005 20:50

Re: Key-Events bei zweiter Tastatur
 
Selbst bei einem Treiber ist das sehr sehr spezifisch. Wozu braucht man denn sowas. Sinn der API ist es ja gerade solche Unterschiede zu kaschieren!

Savar 28. Apr 2005 20:54

Re: Key-Events bei zweiter Tastatur
 
Ich wollt halt eine Tastatur für normale aufgaben verwenden und eine mit Hotkeys programmieren.

Mephistopheles 28. Apr 2005 21:08

Re: Key-Events bei zweiter Tastatur
 
Das wird dann definitiv nicht auf API-Ebene gehen. Die API bekommt eben transparent eine "Tastatureingabe" - ob dies von einer Tastatur, von mehreren oder von einem anderen Gerät aus passiert ist egal. Die entsprechenden APIs um Hotkeys zu setzen basieren darauf. Es wird also simpel nicht funktionieren.

Savar 28. Apr 2005 21:11

Re: Key-Events bei zweiter Tastatur
 
Zitat:

Zitat von Mephistopheles
Das wird dann definitiv nicht auf API-Ebene gehen. Die API bekommt eben transparent eine "Tastatureingabe" - ob dies von einer Tastatur, von mehreren oder von einem anderen Gerät aus passiert ist egal. Die entsprechenden APIs um Hotkeys zu setzen basieren darauf. Es wird also simpel nicht funktionieren.

Schade. Ne Idee wie man das machen könnte?

Mephistopheles 28. Apr 2005 21:51

Re: Key-Events bei zweiter Tastatur
 
Nein

Natürlich kann es über einen Tastaturfiltertreiber möglich sein, aber Treiber sind etwas komplett anderes als Usermode-Programme. Du fängst also quasi neu an zu programmieren.

DGL-luke 28. Apr 2005 22:17

Re: Key-Events bei zweiter Tastatur
 
für eine usb-tastatur(usb ist nur ein anschluss, wenn da ne tastatur dranhängt, ist es immer noch ein gerät) kann man doch normalerweise seinen eigenen treiber schreiben, oder? wenn das teil sowieso hid-konform ist(sprich auch ohne treiber läuft), sollte das auch möglich sein, ohne für das spezielle gerät programmieren zu müssen.

aber geht so etwas überhaupt mit delphi? ich glaube nicht.... :cry:

Mephistopheles 28. Apr 2005 22:47

Re: Key-Events bei zweiter Tastatur
 
Treiber in Delphi? Vergiß es.

yankee 28. Apr 2005 22:49

Re: Key-Events bei zweiter Tastatur
 
Ich hätte jetzt mal gesagt, dass das komplett von der Hardware gesteuert wird. Also zwei Möglichkeiten:
1. Wenn eine externe Tastatur angeschlossen wird, kannst du mri der diretk auf den Notebook garnichts mehr anfangen
2. Es gehen beide. Aber Die Signale werden von irgendeinem Chip zusammen geführt, sodass das OS übernicht "weiss" dass da zwei Tastaturen existieren.

Also das mal als Vermutung...

SirThornberry 28. Apr 2005 22:50

Re: Key-Events bei zweiter Tastatur
 
das os weiß das es 2 tastaturen sind ansonsten würde ja jede usb-tastatur schon unter dos funktionieren

Savar 29. Apr 2005 10:02

Re: Key-Events bei zweiter Tastatur
 
Hab mal ein bisschen rumprobiert. Es werden von beiden Tastaturen Key-Events akzeptiert und es ist (in Delphi) keine Unterscheidung möglich.

Mephistopheles 29. Apr 2005 10:10

Re: Key-Events bei zweiter Tastatur
 
Zitat:

Zitat von SirThornberry
das os weiß das es 2 tastaturen sind ansonsten würde ja jede usb-tastatur schon unter dos funktionieren

Tut sie, wenn dein BIOS entsprechend eingestellt ist.

Zitat:

Zitat von Savar
Hab mal ein bisschen rumprobiert. Es werden von beiden Tastaturen Key-Events akzeptiert und es ist (in Delphi) keine Unterscheidung möglich.

Sag ich doch :zwinker: ... dazu ist die Win32-API da. Sei froh, daß es bis zur Hardware noch einige Abstraktionslayer gibt. Eine USB-Tastatur anzusteuern ist nämlich komplizierter als die guten alten PS/2er.

Savar 29. Apr 2005 10:49

Re: Key-Events bei zweiter Tastatur
 
Zitat:

Zitat von Mephistopheles
Zitat:

Zitat von Savar
Hab mal ein bisschen rumprobiert. Es werden von beiden Tastaturen Key-Events akzeptiert und es ist (in Delphi) keine Unterscheidung möglich.

Sag ich doch :zwinker: ... dazu ist die Win32-API da. Sei froh, daß es bis zur Hardware noch einige Abstraktionslayer gibt. Eine USB-Tastatur anzusteuern ist nämlich komplizierter als die guten alten PS/2er.

In diesem Fall ist das aber ziemlich nervig.

MacGuyver 29. Nov 2007 14:43

Re: Key-Events bei zweiter Tastatur
 
Moin auch :hi:

Ich greife das Theman noch einmal neu auf. Über DelphiDirect kann man unterschiedliche Tastaturen abfragen. Jetzt müsste man nur noch der zweiten Tastatur sagen können, du hälst schön die Klappe. :lol: Unter der Konstellation könnte man dann die Tastatur über DirectX abfragen und gut.
Anwendungsfall: Am PC wird ständig gearbeitet. Jetzt hätte keiner Zeit um mal eben nebenbei eine Eingabe zu tätigen. Also wäre ein kleines extra Fenster da, in dem mit der zweiten Tastatur eingegeben wird. Dann braucht man nicht unbeding ein Netzwerk und zwei Rechner. Schön wäre das mit einer Zehnertastatur, die nicht viel Platz braucht.

Stefan


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:54 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