![]() |
USB Stick Serial Number mit Vista
Habe von der JEDI-Bibliothek das Setup and Config Manager API runtergeladen. Mit der Demoapplikation SafeRemoval kann ich die Serial Number und die Laufwerkbuchstaben der eingesteckten Sticks sehen.
Unter XP funktioniert das tadellos aber unter VISTA erscheinen die Serial Number nicht mehr. Was hat unter Vista geändert? Wie muss ich den Code abändern, damit es wieder funktioniert? Gibt es anderen Beispielcode, der die Nummer unter VISTA auslesen kann? Ich möchte den Code in eine eigene Applikation einbauen. Vielen Dank für eure Hilfe? Bruno |
Re: USB Stick Serial Number mit Vista
ich hatte noch keine Gelegenheit Vista zu erforschen. Auf jeden Fall hat sich die interne Struktur geaendert.
|
Re: USB Stick Serial Number mit Vista
Hallo Robert
Ich habe das SaveRemoval-Programm unter Vista gedebuggt und herausgefunden dass die ID in der Funktion "GetDriveInstanceID" auftaucht und zwar in der lokalen Variablen "Fielname". Beispiel: '\\?\storage#volume#1&19f7e59c&0&_??_usbstor#disk& ven_swissbit&prod_victorinox&rev_1.89#40002258f500 00a3&0#{53f56307-b6bf-11d0-94f2-00a0c91efb8b}#{53f5630d-b6bf-11d0-94f2-00a0c91efb8b}\' Die Nummer "40002258f500000a3" ist hier die korrekte ID (also ohne &0). Ein anderer Stick liefert eine Nummer mit mehreren & - Zeichen in der ID Vielleicht kannst du mir aus deiner Erfahrung folgende Fragen dazu beantworten: - Was bedeuten die &-Zeichen am Ende und in der ID und was mach ich damit? - Kann ich davon ausgehen, dass die ID immer an dieser Stelle ist? - Was ist, wenn ein Stick keine ID hat? - Gibt es einen direkteren und ev. sichereren Weg, um an diesen String zu kommen? Viele Grüsse Bruno |
Re: USB Stick Serial Number mit Vista
Die &'s ind ueblicherweise Trenner der Stringbestandteile. Da hat MS aber nichts wirklich dokumentiert.
Wenn keine Seriennummer vorhanden ist, dann hast du einen miesen Billigstick erwischt. Wegschmeissen. Die Seriennummer ist fuer USB Sticks vorgeschrieben. Schlimmer sind die Sticks bei denen die Seriennummer immer gleich ist. Davon zwei angeschlossen und das OS kriegt Probleme. Leider ist das ganze Registry-Zeug undokumentiert und kann sich deshalb jederzeit aendern. MS aendert das auch in jeder Windows-Version. Einen direkteren Weg gibt es nicht wirklich. Es gaebe noch den Weg ueber USBView ein Beispiel des Windows DDK. Dort spricht man den Hub-Treiber ueber DeviceIoControl Calls an. Das Problem ist das dies ueberhaupt nicht zum Config Manager API passt. Man kriegt also die Verbindung zu Laufwrken nicht hin. Zusatzlich hat das API so seine Probleme. |
Re: USB Stick Serial Number mit Vista
Robert,
kann es sein dass die ganzen Demos aus der API hier nicht mit dem BDS 2006 laufen? |
Re: USB Stick Serial Number mit Vista
Muesste ich mal ausprobieren. Ich sehe aber kein prinzipielles Problem.
Ich habe halt schlicht keine Zeit mich um die API Conversions zu kuemmern. Ich wuerde ja gerne, aber ich habe noch ein paar andere Interessen die meine Freizeit auffressen. |
Re: USB Stick Serial Number mit Vista
War doch kein Vorwurf an dich! Nur eine Feststellung!
Delphi-Quellcode:
...
// check configuration {$IFNDEF JVCL_CONFIGURED} {$IFDEF SUPPORTS_COMPILETIME_MESSAGES} {$MESSAGE FATAL 'Your Delphi/BCB version is not supported by this JVCL version!'} {$ELSE} 'Your Delphi/BCB version is not supported by this JVCL version!' <===== Hier komme ich beim Compilieren hin! {$ENDIF SUPPORTS_COMPILETIME_MESSAGES} {$ENDIF !JVCL_CONFIGURED} ... |
Re: USB Stick Serial Number mit Vista
Mit 2006 sollte die JVCL eigentlich schon lange laufen? Benutze sie zwar nicht aktiv, aber hab vor ein paar Tagen erst reingeschaut,
![]() |
Re: USB Stick Serial Number mit Vista
Hi,
ich habe diese Version bei mir installiert: JVCL330CompleteJCL198-Build2530 Und beim installieren habe ich alle Default-Einstellungen uebernommen! |
Re: USB Stick Serial Number mit Vista
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:11 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz