Leider ist die Darstellung durcheinandergeraten. Ich probiere
es noch einmal:
Generalthema ist der Test, ob ein Scanner angeschlossen
(= betriebsbereit) ist, bevor ein Scanvorgang ausgelöst
wird, vergleiche
Scanner - Gerät bereit?
Wenn es dazu eine einfache(re) Lösung gibt, wäre ich auch
sehr interessiert.
Derzeit probiere ich das Auslesen der Registry mit Hilfe
der Funktionen aus der Beispiel-DB tkRegistry00 (Arbeiten
mit der Registry) - mein Erstversuch im Umgang mit der
Registry. Das klappt, mit einem bestimmten Schlüssel
jedoch nicht, gleich, ob dieser einen Wert enthält oder
nicht. Der Aufruf (beispielhaft)
MsgBox fWertLesen(HKEY_LOCAL_MACHINE, \"SYSTEM\Controlset\ _
001\Control\Class\{6BDD1FC6-810F-11D0-BEC7-08002BE2092F}\ _
0001\", \"CreateFileName\"«»)
erzeugt in der Funktion fRegAbfrageWert an der Stelle
fRegAbfrageWert = Left$(sBuffer, _
InStr(1, sBuffer, Chr$(0)) - 1)
einen Fehler (LZF 5: Ungültiger Prozeduraufruf oder
ungültiges Argument). Wie kann ich damit umgehen?
Hintergrund: Ein angeschlossener Scanner erzeugt einen
Eintrag in der Systemsteuerung (Scanner und Digitalkameras).
Dies entspricht dem genannten Pfad Bildbearbeitungsgeräte
des aktuellen Controlsets zzgl. verschiedener USB-Ports.
Der Schlüssel \"DriverDesc\" enthält den Namen des Scanners
(dieser lässt sich lesen), der Schlüssel \"CreateFileName\"
ist der interessante und variable Teil. Dieser zeigt
entweder nichts oder bei angeschlossenem Scanner einen
Eintrag wie \"\.Usbscan0\", auf das ich eben testen will.
Gibt es Hilfe für mich?