AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Delphi wie Hardware (HID) erkennen und via Programm verbinden/trennen?
Thema durchsuchen
Ansicht
Themen-Optionen

wie Hardware (HID) erkennen und via Programm verbinden/trennen?

Ein Thema von himitsu · begonnen am 12. Okt 2010 · letzter Beitrag vom 23. Nov 2010
 
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.225 Beiträge
 
Delphi 12 Athens
 
#1

wie Hardware (HID) erkennen und via Programm verbinden/trennen?

  Alt 12. Okt 2010, 06:22
Moin,

via SetupDiEnumDeviceInterfaces kann man ja die "angeschlossenen" HID-Geräte erkennen/auflisten.
"Leider" werden auch alle Geräte erkannt, welche einmal/aktuell in der HID-Verwaltung drinstehn.
Also alle Geräte, welche über "Gerät verbinden" gesucht und verbunden wurden.
Nach einem Neustart von Windows oder wenn die Verbindung zum Gerät andersweitig getrennt wurde, stehen die "verbundenen" Geräte aber nur noch im Leerlauf drin und sind physisch nicht mehr verbunden (stehen aber nich in der Liste der ).

Heißt, man kann sie zwar über SetupDiEnumDeviceInterfaces finden, man kann via CreateFile drauf zugreifen und z.B. über HidD_GetAttributes etwas auslesen,
aber kummunizieren (ReadFile, WriteFile und Co.) kann man mit dem Gerät nicht.




Gibt es da eine Möglichkeit, ohne probehalber über ReadFile/WriteFile drauf zuzugreifen, rauszufinden, ob das Gerät im Leerlauf oder verbunden ist?

Warum nicht über ReadFile und Co. ist recht einfach geklärt.
Ich würde diese Funktionalität gern direkt in meine HID-Verwaltungs-/Basisklassen inegrieren und diese weiß nicht wieviel Byte für eine Übertragung darüber verwendet werden müssen und sie kennt auch das "Protokoll" nicht, um einen "harmlosen" Befehl zum Testen nehmen zu können.




Und kann man das ganze auch irgendwie programmseitig verbinden/trennen?
Also via eigenem Delphi-Programm ein Gerät verbinden, trennen, entfernen oder suchen?

Also wenn ich z.B. bei einem nicht verbundenen WiiControler den SyncModus starte (Button 1+2 oder Sync drücken), dann soll das Programm dieses erfahren und das Gerät automatisch verbinden,
ohne daß man selber in die Bluetooth-Umgebung geht und dieses manuell verbindet.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
 


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 03:50 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