PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Devicenamen herausfinden?


PatkIllA
2007-02-09, 01:32:44
Ich hab mittels SetupDiEnumDeviceInterfaces einen Satz Geräte geholt.
Wie krieg ich denn jetzt den Devicenamen und evtl. noch den Herstellernamen?
Ansprechen kann ich die Geräte sogar schon, aber der Devicepath ist nicht allzu anschaulich.

Gast
2007-02-09, 09:22:46
Hm, fehlen da nicht noch ein paar Zusatzinformationen ?
SetupDiEnumDeviceInterfaces ist eine Funktion von ?
Geht's um Linux, Mac OS, Microsoft, DirectInput, Java-Klassenbibliothek,
WIN32-API oder .NET ?

Hal würde sagen: Lieber Dave, ich benötige von Dir mehr INPUT ;-)
Oder soll ich etwa selbst danach suchen ?

PatkIllA
2007-02-09, 09:55:21
Das SetupDiEnumDeviceInterfaces (http://msdn2.microsoft.com/en-us/library/ms791242.aspx) gehört zur Windows API.
Ich dachte, wer in dem Bereich Erfahrung hat würde das wiedererkennen, weil alle Funktionen in dem Bereich mit dem gleichen Kürzel "SetupDi" anfangen. Der Rest müsste eh suchen.

Coda
2007-02-09, 14:56:59
Gibt's da keine Samples dazu im DirectInput-SDK?

PatkIllA
2007-02-09, 15:13:13
Da hab ich noch nicht nachgeschaut.
Ich hatte gefofft jemand wüsste die Funktion. Oft kann man sich durch die Doku klicken und man bekommt gesagt was man mit Struktur X machen kann.

Coda
2007-02-09, 17:30:50
Da hab ich noch nicht nachgeschaut.
Warum nicht? Das ist doch wohl das erste was man macht...

Ich hatte gefofft jemand wüsste die Funktion. Oft kann man sich durch die Doku klicken und man bekommt gesagt was man mit Struktur X machen kann.
Warum sollen wir dir diese Arbeit abnehmen? :|

PatkIllA
2007-02-09, 17:35:30
Warum nicht? Das ist doch wohl das erste was man macht...
Mir war bislang gar nicht so bewusst, dass ich da in DirectInput gerutscht bin.
Die anderen Beispiele beschränken sich darauf die Vendor und die ProductID auszulesen und danach zu verbinden.
Es ist ja auch nicht so, dass ich nicht geschaut habe. Alleine schon die SetupDiGetDeviceInterfaceDetailA hat mich schon zur Haare raufen genötigt.

Warum sollen wir dir diese Arbeit abnehmen? :|
Da muss ja auch gar keiner groß Arbeit machen, sondern es hätte schon ein Wort gereicht. Das gehört ja auch nicht zu den Dingen, die man in mit einmal googeln und dem ersten Treffer abgehakt hat.

Gauron Kampeck
2007-02-09, 18:31:24
Mir war bislang gar nicht so bewusst, dass ich da in DirectInput gerutscht bin.

Bist du auch nicht, denn im DX-SDK gibt es keine solche Funktion (zumindest nicht im Feb06-Release). Das Kürzel "Di" (bei DirectInput wäre es "DI" gewesen) steht nach deinem Link vermutlich für "device information". Trotzdem kann ich dir auch nicht sagen, was das Teil nun macht.

PatkIllA
2007-02-09, 18:35:15
wollte ich doch meinen. Das Driver Development Kit hab ich sogar auf Platte.
Ich glaub ich bau erstmal weiter und kümmer mich um das Erkennen von abgemeldeten Geräten usw. Vielleicht stolper ich da ja noch über die Funktion. Bis dahin muss "\\?\HID#Vid_045e&Pid_003b#7&195e397&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}" erstmal als Name herhalten.

Demirug
2007-02-09, 19:16:25
Ich weiß ja nicht was du vorhast aber wenn du nicht gerade ein Geräte Installationsprogramm schreibst bist du im völlig falschen Bereich der API unterwegs.

PatkIllA
2007-02-09, 19:41:50
Ich will nur ein paar Tastendrücke von HID Geräten (Fernbedienungen und spezielle Sondertasten auf Tastaturen, die keinen Tastendruck im herkömmlichen Sinne auslösen) auslesen.
Im Ansatz klappt das auch schon, deswegen kann ich da nicht so falsch sein.
Ich würde nur gerne statt des kryptischen DevicePaths einen Klartextnamen wie "Logitech itouch keys", wie er im Gerätemanager steht haben.
Wenn jemand noch gute Infos zu den HID-Deskriptoren hat kann er die auch gerne loswerden. (Da habe ich aber noch nicht ernsthaft nachgesucht.)

Gast
2007-02-09, 20:52:47
http://www.codeproject.com/treectrl/DeviceTree.asp

da könnte eventuell die lösung drinstecken

PatkIllA
2007-02-09, 21:00:50
schon mal danke
man kann aber anscheinend auch einfach den Devicepath an den # auseinandernehmen und dann unter in der Registry unter HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\teil1\teil2\teil3\DeviceDesc schauen.

PatkIllA
2007-02-22, 17:00:30
Ich krame es mal wieder raus.
Weiß jemand ob, und wenn ja wie man sinnvollle Namen für die einzelnen Buttons und Values herausbekommen kann? Der DataIndex ist zwar eindeutig, hat aber nicht zwangsläufig was mit der Verteilung auf dem Gerät zu tun.