USB Stick
-
Sovok schrieb:
gibts noch was anderes?
der ct code is im bezug auf api aufrufe sehr undurchsichtigBist Du schon weitergekommen?
Ich habe mich mal durch den Code gewühlt und habe es selbst nochmal geschrieben und es sogar hinbekommen.
Ich nutze das Programm allerdings zum gezielten Auswerfen vor dem Abziehen des Sticks, da es ja auch zu Datenverlust führen kann, sofern der Stick sich noch im Schreibzugriff befindet.
-
der holt sich da doch irgendwelche funktionszeiger...
hast du ne ahnung welchen apifunktionen die entsprechen
vom namen her hab ich in keinem meiner sdks was gefunden
-
Sovok schrieb:
der holt sich da doch irgendwelche funktionszeiger...
hast du ne ahnung welchen apifunktionen die entsprechen
vom namen her hab ich in keinem meiner sdks was gefundenJa, Du brauchst dazu das Windows2k DDK oder halt die Header dazu.
Der Autor von der CT-Version lädt sich die Methoden direkt aus der DLL.
Die Methoden, die er verwendet stehen ja in seinem Code bei dem Aufruf von GetProcAddress().
CM_Locate_DevNode()
CM_Get_Child()
CM_Get_Sibling()
CM_Get_DevNode_Status()
CM_Get_Device_ID_Size()
CM_Get_Device_IDA()
CM_Request_Device_Eject()Ich bin noch dabei einige Änderung an meiner Klasse vorzunehmen, dann werde ich sie auch gerne mal posten.
-
wo gibts das 2k ddk
ich find bei ms nur n dx7 ddk und n paar w98/me ddk samples
-
Sovok schrieb:
wo gibts das 2k ddk
ich find bei ms nur n dx7 ddk und n paar w98/me ddk samplesFrüher konnte man sich das mal so herunterladen. Nun mußt Du es Dir von MS anfordern und bekommst es gegen Portobezahlung zugesandt wenn ich mich recht erinnere.
Ich habe nochmal ne Frage zu WM_DEVICECHANGE:
Ich habe die Message abgefangen und fülle auch die DEV_BROADCAST_HDR-Struktur, aber was kann ich damit machen? Wie bekomme ich dann den Namen des Devices?
-
du kannst den typ prüfen und es dann in die struktur des typs casten
danach hast du dann den laufwerksbuchstabe
-
Sovok schrieb:
du kannst den typ prüfen und es dann in die struktur des typs casten
danach hast du dann den laufwerksbuchstabeJa, das habe ich auch gerade gemerkt, nachdem ich von der MSDN auf die Platform SDK gewechselt habe.
Habe nun nen DEV_BROADCAST_VOLUME-struct und da dann dbcv_unitmask von 8192 was ja 2^13 ist => Laufwerk N:
Aber wie setze ich das geschickt um?
Muß ich das dann zu fuß machen oder gibt es dafür ne schicke Methode.Und ich suche auch noch den Namen des Devices. Zum Beispiel in meinem Fall "USB-Massenspeicher" oder noch besser das ChildDevice "Q-MAX USB Flash Drive USB Device" davon.
Dann wäre ich total happy

-
GetVolumeInformation
das wichtigste is aber die seriennummer
damit kannst du mehrere disks unterscheiden
-
Sovok schrieb:
GetVolumeInformation
das wichtigste is aber die seriennummer
damit kannst du mehrere disks unterscheidenDamit bekomme ich zwar die Serial und den Laufwerksnamen, aber nicht den Devicenamen.
Oder kann ich noch etwas mit der Serial machen?
-
ne für den devicenamen kenn ich keinen einfachen weg
aber was anderes
wo kann man denn das ddk bestellen?
hab nur ne msdn subscriber seite gefunden
oder mail mit einfach die libs und header .... ich brauchs ja eh nur für usb