You could write a query for each .DriveType you want to query. Or, you could query all LogicalDisk(s) and 'filter' your results.
code:
$strComputer = "."
$objWMIService = GetObject("winmgmts:{impersonationLevel=impersonate}!\\"+$strComputer+"\root\cimv2")
$DiskSet = $objWMIService.ExecQuery("select * from Win32_LogicalDisk")
For each $Disk in $DiskSet
? " Disk Name: "+$Disk.Name
? " Disk Space: "+$Disk.Size
? "Disk Freespace: "+$Disk.FreeSpace
Select
Case $Disk.DriveType=0
? " Disk Type: Unknown"
Case $Disk.DriveType=1
? " Disk Type: No Root Directory"
Case $Disk.DriveType=2
? " Disk Type: Removable Disk"
Case $Disk.DriveType=3
? " Disk Type: Local Disk"
Case $Disk.DriveType=4
? " Disk Type: Network Drive"
Case $Disk.DriveType=5
? " Disk Type: Compact Disc"
Case $Disk.DriveType=6
? " Disk Type: RAM Disk"
Case 1 ; Case 1 added as a 'best practice' although its not bloody likely to ever happen as 'Unknown' is already an option.
? " Disk Type: Undeterminable"
Endselect
?
Next
[ 12 July 2002, 15:51: Message edited by: Chris S. ]