Windows stellt Informationen über verschiedene Arten angeschlossener Geräte bereit, z. B. Festplatten, CD-ROMs, Drucker und andere. Diese Geräte können über verschiedene Schnittstellen wie USB, SCSI, serielle oder parallele Ports usw. an den Computer angeschlossen werden.
Sehen Sie sich hier ein Beispielvideo darüber an, was Sie damit in einer Access-Datenbankanwendung (DeviceDetectorAuthDemo.accdb) tun können:
https://www.youtube.com/watch?v=qh5hrhpRNIg
AxDeviceDetector.exe ist ein (32 Bit) ActiveX OOP (außerhalb des Prozesses) EXE-Server, der zwei Klassen verfügbar macht:
In diesem Repository befinden sich drei Projekte:
AxDeviceDetector.vbp
SaDeviceDetector.vbp
Dies ist kein ActiveX-Server, sondern nur eine eigenständige ausführbare Datei, die als Beispiel und Demo dient.
Sie können diese ausführbare Datei einfach ausführen, ohne dass Sie den ActiveX-Server registrieren müssen, damit sie funktioniert , da die Klassen nicht über ActiveX verwendet werden, sondern privat in die ausführbare Datei eingebettet sind. Dieses Projekt verwendet dieselben Klassen, fügt jedoch das frmDetector-Formular hinzu, das die Ereignisse in einem Listenfeld anzeigt.
WARNUNG : Wenn Sie dieses Projekt in der Visual Basic-IDE starten, werden Sie darüber informiert, dass die beiden Klassen (DeviceDetector und DeviceInfo) über eine öffentliche Schnittstelle verfügen, was für eine eigenständige ausführbare Datei nicht möglich ist. Dies liegt daran, dass die beiden Projekte dieselben Quelldateien verwenden. Die Visual Basic-IDE ändert diese Eigenschaften als privat. Speichern Sie das Projekt nicht mit diesen Änderungen, sonst müssen Sie sie für das ActiveX-Serverprojekt wieder auf „Multiuse“ zurücksetzen.
AxDeviceDetectorTest.vbp
Auf meinem persönlichen Blog gibt es einen Blogbeitrag, der dieses Projekt erklärt.
Die in diesem Projekt benötigte DLL „deviceinfo.dll“ wurde mit Visual Studio 2017 erstellt (siehe die Readme-Datei für das Repository „deviceinfo_dll“). Für eine ordnungsgemäße Funktion muss daher die entsprechende Visual C 2017-Laufzeitumgebung (x86) auf dem Zielcomputer installiert sein.
Sie benötigen außerdem die Visual Basic 5-Laufzeit-DLL (SP3) msvbvm50.dll.
Die herunterladbare ZIP-Datei enthält beide erforderlichen DLLs, die Sie entweder dort ablegen sollten, wo sich die Exe-Dateien befinden, oder in einem Ihrer PATH-Verzeichnisse.