ComboBox - aktuelle Wechselmedien einfügen

bjoerg

Grünschnabel
Hallo, erst einmal ein grosses Lob an dieses Forum.

Vor einigen Monaten habe ich schon einmal in C# reingeschnuppert und ein kleines Prog geschrieben,doch leider fehlte ein bissle Zeit, so dass ich aus dem Thema rausgekommen bin. Vielleicht könnt Ihr mir ein paar Tips zu folgender Problematik geben.

Mein Prog kann Dateien mit einem externen Programm verschlüssel, komprimieren und anschliessend auf CD brennen. Bis jetzt war dies immer das Laufwerk E. Nun möchte ich realisieren, dass sich die Benutzer eigene angeschlossene Wechselmedien aussuchen können (CDRW, DVD, USB-Stick usw.).

Meine Idee ist hier eine ComboBox. Doch wie werte ich die angeschlossenen Wechselmedien aus und übergebe diese an die ComboBox, so dass diese zur Auswahl stehen?

Links, Tipps werden nett, da ich gerade unter Zeitdruck stehe.

cu bjoerg
 
Ich kann dir da nur einen Tipp geben, wie du das dann wirklich machst bleibt dir überlassen.
Schau mal in der Registry bei

HKEY_LOCAL_MACHINE\SYSTEM\MountedDevices

nach. Dort findest du dann die ganzen Laufwerke. Die Werte sind dort als Hexadezimalzahlen gespeichert, jetzt musst du nur im Wert nach folgenden Stellen suchen:

53 00 54 00 4F 00 52 00 41 00 47 00 45 00 23 00 52 00 65 00 6D 00 6F 00 76 00 61 00 62 00 6C 00 65 00 4D 00 65 00 64 00 69 00 61

was so viel bedeutet wie: S.T.O.R.A.G.E.#.R.e.m.o.v.a.b.l.e.M.e.d.i.a

und

49 00 44 00 45 00 23 00 43 00 64 00 52 00 6F 00 6D

I.D.E.#.C.d.R.o.m

Code:
Microsoft.Win32.Registry("HKEY_LOCAL_MACHINE\\SYSTEM\\MountedDevices"
,"\\DosDevices\\E:","Device nicht vorhanden");

Jetzt brauchst du ne Möglichkeit die Daten irgendwie umzuwandeln. Du bekommst ein obkject zurück, ich hab auch schon versucht es in einen String umzuwandeln, ich bekomm da aber irgendwie immer nur "System.Byte[]" raus, ich kenn mich ja auch nicht so gut mit C# aus, aber vielleicht weißt du es wie es funktioniert oder jemand anders hilft dir ab hier weiter

Greetz woni
 

Neue Beiträge

Zurück