vielleicht hilft Dir mein Script - musst Du aber für Deine Bedürfnisse anpassen:
Code
;****************************************************************
; Sucht alle USB-LW laut WMI mit den gegebenfalls zugehörigen
; Laufwerksbuchstaben
; Übergabe: -
; Rückgabe: 2D Array
; Col0 Col1
; Kingston DTR30G2 USB Device|\\.\PHYSICALDRIVE4 J:
; Samsung Portable SSD T3 USB Device|\\.\PHYSICALDRIVE3 F:|G:
; Hinweis: wird nichts gefunden, wird trotzden ein Array zurückgeliefert
; im Index [0][0] steht immer die Anzahl der gefunden Laufwerke
;****************************************************************
func _wmi_usb_lw ()
local $disken
local $anzahl = 0
local $name
local $Mediatype
local $ans
local $caption
local $disknummer
local $colItems
local $A
local $B
local $objWMIService = ObjGet("winmgmts:\\.\root\CIMV2")
dim $dd[1][2]
If IsObj($objWMIService) Then
$colItems = $objWMIService.ExecQuery('select * from Win32_DiskDrive')
If IsObj($colItems) Then
For $oItem In $colItems
$name = $oItem.Name
$Mediatype = $oItem.MediaType
$ans = $oItem.InterfaceType
$caption = $oItem.Caption
if ($ans = "USB" or $ans = "SCSI") and $Mediatype = "External hard disk media" Then
$anzahl = $anzahl + 1
ReDim $dd[$anzahl + 1][2]
$dd[$anzahl][0] = $caption & "|" & $name
;print ($caption & @TAB & $Mediatype)
EndIf
Next
endif
EndIf
$dd [0][0]= $anzahl
if $dd [0][0] <> 0 Then
for $i = 1 to $dd[0][0]
$disknummer = StringRight ($dd[$i][0],1)
;print ("disknummer: " & $disknummer & @TAB & $dd[$i][0])
$colItems = $objWMIService.ExecQuery('select * from Win32_LogicalDiskToPartition')
If IsObj($colItems) Then
For $oItem In $colItems
$A = $oItem.Antecedent ;beinhaltet die Disknummer...
$B = $oItem.Dependent ;beinhlatet den LW
if StringInStr ($A, "Disk #" & $disknummer) <> 0 Then
;print (gettok ($b, "=", 2))
$dd[$i][1] = $dd[$i][1] & gettok ($b, "=", 2) & "|"
EndIf
Next
$dd[$i][1] = StringReplace ($dd[$i][1], '"' , '')
if StringRight ($dd[$i][1], 1) = "|" Then
$dd[$i][1] = StringLeft ($dd[$i][1], StringLen ($dd[$i][1]) -1)
EndIf
EndIf
Next
EndIf
Return ($dd)
EndFunc
;****************************************************************
Alles anzeigen
lg
Racer