JD2066 Posted February 4, 2008 Posted February 4, 2008 (edited) Hi, I'm trying to find the mount point a volume has with WMI. I have the following code to list the volumes and mount points but it doesn't seem to work right. $WMIService = ObjGet("winmgmts:\\.\root\cimv2") $WMIMountPoints = $WMIService.ExecQuery("Select * from Win32_MountPoint") If IsObj($WMIMountPoints) Then For $MountPoint in $WMIMountPoints MsgBox(0, "WMI Info", $MountPoint.Volume & @CRLF & $MountPoint.Directory) Next EndIf I would expect the output of $MountPoint.Directory for the C: drive to be C:\ but it's not, the value is Win32_Directory.Name="C:\\". Anyone know what the problem is? Justin Edited February 4, 2008 by JD2066
whim Posted February 4, 2008 Posted February 4, 2008 Don't know how WMI regularly returns path strings, but if you export a registry key to a .reg file it will also return most path strings this way. Probably for easy processing by the system, '\' being the C++ escape character ?
JD2066 Posted February 4, 2008 Author Posted February 4, 2008 I just found the solution. The following code works just fine: $WMIService = ObjGet("winmgmts:\\.\root\cimv2") $WMIVolumes = $WMIService.ExecQuery("Select * from Win32_Volume") If IsObj($WMIVolumes) Then For $Volume in $WMIVolumes MsgBox(0, "WMI Info", $Volume.Name & @CRLF & $Volume.DeviceID) Next EndIf I just found using Win32_Volume instead of Win32_MountPoints returns the correct values. I had assumed before posting that Win32_Volume didn't list MountPoints. Not sure why I didn't think to check before posting.
ptrex Posted February 4, 2008 Posted February 4, 2008 @all Win32_Volume -> Windows XP and earlier: This class is not available. Regards, ptrex Contributions :Firewall Log Analyzer for XP - Creating COM objects without a need of DLL's - UPnP support in AU3Crystal Reports Viewer - PDFCreator in AutoIT - Duplicate File FinderSQLite3 Database functionality - USB Monitoring - Reading Excel using SQLRun Au3 as a Windows Service - File Monitor - Embedded Flash PlayerDynamic Functions - Control Panel Applets - Digital Signing Code - Excel Grid In AutoIT - Constants for Special Folders in WindowsRead data from Any Windows Edit Control - SOAP and Web Services in AutoIT - Barcode Printing Using PS - AU3 on LightTD WebserverMS LogParser SQL Engine in AutoIT - ImageMagick Image Processing - Converter @ Dec - Hex - Bin -Email Address Encoder - MSI Editor - SNMP - MIB ProtocolFinancial Functions UDF - Set ACL Permissions - Syntax HighLighter for AU3ADOR.RecordSet approach - Real OCR - HTTP Disk - PDF Reader Personal Worldclock - MS Indexing Engine - Printing ControlsGuiListView - Navigation (break the 4000 Limit barrier) - Registration Free COM DLL Distribution - Update - WinRM SMART Analysis - COM Object Browser - Excel PivotTable Object - VLC Media Player - Windows LogOnOff Gui -Extract Data from Outlook to Word & Excel - Analyze Event ID 4226 - DotNet Compiler Wrapper - Powershell_COM - New
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now