Win32_Volume class
The Win32_Volume class represents an area of storage on a hard disk. The class returns local volumes that are formatted, unformatted, mounted, or offline. A volume is formatted by using a file system, such as FAT or NTFS, and might have a drive letter assigned to it. One hard disk can have multiple volumes, and volumes can span multiple physical disks. The Win32_Volume class does not support disk drive management.
Windows XP and earlier: This class is not available.
The following syntax is simplified from Managed Object Format (MOF) code and includes all of the inherited properties. Properties and methods are in alphabetic order, not MOF order.
Syntax
class Win32_Volume : CIM_StorageVolume
{
uint16 Access;
boolean Automount;
uint16 Availability;
uint64 BlockSize;
uint64 Capacity;
string Caption;
boolean Compressed;
uint32 ConfigManagerErrorCode;
boolean ConfigManagerUserConfig;
string CreationClassName;
string Description;
string DeviceID;
boolean DirtyBitSet;
string DriveLetter;
uint32 DriveType;
boolean ErrorCleared;
string ErrorDescription;
string ErrorMethodology;
string FileSystem;
uint64 FreeSpace;
boolean IndexingEnabled;
datetime InstallDate;
string Label;
uint32 LastErrorCode;
uint32 MaximumFileNameLength;
string Name;
uint64 NumberOfBlocks;
string PNPDeviceID;
uint16[] PowerManagementCapabilities;
boolean PowerManagementSupported;
string Purpose;
boolean QuotasEnabled;
boolean QuotasIncomplete;
boolean QuotasRebuilding;
string Status;
uint16 StatusInfo;
string SystemCreationClassName;
string SystemName;
uint32 SerialNumber;
boolean SupportsDiskQuotas;
boolean SupportsFileBasedCompression;
};
Members
The Win32_Volume class has these types of members:
- Methods
- Properties
Methods
The Win32_Volume class has these methods.
Method | Description |
---|---|
AddMountPoint | Adds a mount point directory for the volume. |
Chkdsk | Invokes the Chkdsk operation on the volume. |
Defrag | Defragments the volume. |
DefragAnalysis | Generates a fragmentation analysis for the volume. |
Dismount | Dismounts a volume from the file system. |
ExcludeFromAutoChk | Excludes volumes from the Chkdsk operation to be run at the next reboot. |
Format | Formats the volume. |
Mount | Mounts a volume to the file system. |
ScheduleAutoChk | Schedules Chkdsk to be run at the next reboot if the dirty bit of the volume is set. |
Properties
The Win32_Volume class has these properties.
Access
Data type: uint16
Access type: Read-only
Describes whether the media is readable. This property is inherited from CIM_StorageExtent. This can be one of the following values.
Value | Meaning |
---|---|
0 (0x0) | Unknown media. |
1 (0x1) | The media is readable. |
2 (0x2) | The media is writable. |
3 (0x3) | The media is readable and writable. |
4 (0x4) | "Write once" media. |
Automount
Data type: boolean
Access type: Read-only
If true, the volume is mounted to the file system automatically when the first I/O is issued. If false, the volume is not mounted until explicitly mounted by using the Mount method, or by adding a drive letter or mount point.
Availability
Data type: uint16
Access type: Read-only
Describes the availability and status of the device. Inherited from CIM_LogicalDevice. This can be one of the following values.
Value | Meaning |
---|---|
1 (0x1) | Other |
2 (0x2) | Unknown |
3 (0x3) | Running or Full Power |
4 (0x4) | Warning |
5 (0x5) | In Test |
6 (0x6) | Not Applicable |
7 (0x7) | Power Off |
8 (0x8) | Offline |
9 (0x9) | Off Duty |
10 (0xA) | Degraded |
11 (0xB) | Not Installed |
12 (0xC) | Install Error |
13 (0xD) | Power Save - Unknown The device is known to be in a power save mode, but its exact status is unknown. |
14 (0xE) | Power Save - Low Power Mode The device is in a power save state, but still functioning, and may exhibit degraded performance. |
15 (0xF) | Power Save - Standby The device is not functioning, but could be brought to full power quickly. |
16 (0x10) | Power Cycle |
17 (0x11) | Power Save - Warning The device is in a warning state, but also in a power save mode. |
18 (0x12) | Paused |
19 (0x13) | Not Ready |
20 (0x14) | Not Configured |
21 (0x15) | Quiesced |
BlockSize
Data type: uint64
Access type: Read-only
Size in bytes of the blocks in this storage extent. If there is a variable block size, then the maximum block size in bytes is specified. If the block size is unknown or if a block concept is not valid (for example, for Aggregate Extents, Memory, or LogicalDisks), the value is 1 (one). his property is inherited from CIM_StorageExtent.
For more information about using uint64 values in scripts, see Scripting in WMI.
Capacity
Data type: uint64
Access type: Read-only
Size of the volume in bytes.
For more information about using uint64 values in scripts, see Scripting in WMI.
Caption
Data type: string
Access type: Read-only
A short description of the area of storage. This property is inherited from CIM_ManagedSystemElement.
Compressed
Data type: boolean
Access type: Read-only
If true, the volume exists as one compressed entity, such as a DoubleSpace volume. If file-based compression is supported, such as the NTFS file system, this property is false.
ConfigManagerErrorCode
Data type: uint32
Access type: Read-only
Indicates the Win32 Configuration Manager error code. This can be one of the following values.
Value | Meaning |
---|---|
0 (0x0) | This device is working properly. |
1 (0x1) | This device is not configured correctly. |
2 (0x2) | Windows cannot load the driver for this device. |
3 (0x3) | The driver for this device might be corrupted, or your system may be running low on memory or other resources. |
4 (0x4) | This device is not working properly. One of its drivers or your registry might be corrupted. |
5 (0x5) | The driver for this device needs a resource that Windows cannot manage. |
6 (0x6) | The boot configuration for this device conflicts with other devices. |
7 (0x7) | Cannot filter. |
8 (0x8) | The driver loader for the device is missing. |
9 (0x9) | This device is not working properly because the controlling firmware is reporting the resources for the device incorrectly. |
10 (0xA) | This device cannot start. |
11 (0xB) | This device failed. |
12 (0xC) | This device cannot find enough free resources that it can use. |
13 (0xD) | Windows cannot verify this device's resources. |
14 (0xE) | This device cannot work properly until you restart your computer. |
15 (0xF) | This device is not working properly because there is probably a re-enumeration problem. |
16 (0x10) | Windows cannot identify all the resources this device uses. |
17 (0x11) | This device is asking for an unknown resource type. |
18 (0x12) | Reinstall the drivers for this device. |
19 (0x13) | Failure using the VxD loader. |
20 (0x14) | Your registry might be corrupted. |
21 (0x15) | System failure. Try changing the driver for this device. If that does not work, see your hardware documentation. Windows is removing this device. |
22 (0x16) | This device is disabled. |
23 (0x17) | System failure. Try changing the driver for this device. If that does not work, see your hardware documentation. |
24 (0x18) | This device is not present, is not working properly, or does not have all of its drivers installed. |
25 (0x19) | Windows is still setting up this device. |
26 (0x1A) | Windows is still setting up this device. |
27 (0x1B) | This device does not have a valid log configuration. |
28 (0x1C) | The drivers for this device are not installed. |
29 (0x1D) | This device is disabled because the firmware of the device did not give it the required resources. |
30 (0x1E) | This device is using an Interrupt Request resource that another device is using. |
31 (0x1F) | This device is not working properly because Windows cannot load the drivers required for this device. |
ConfigManagerUserConfig
Data type: boolean
Access type: Read-only
If True, the device is using a user-defined configuration. Otherwise, False. This property is inherited from CIM_LogicalDevice.
CreationClassName
Data type: string
Access type: Read-only
Indicates the name of the class or the subclass used in the creation of an instance of this class. When used with the other key properties of this class, this property allows all instances of this class and its subclasses to be uniquely identified. This property is inherited from CIM_LogicalDevice.
Description
Data type: string
Access type: Read-only
Qualifiers: Key
A description of the object. This property is inherited from CIM_ManagedSystemElement
DeviceID
Data type: string
Access type: Read-only
Unique identifier for the volume on this system. This property is inherited from CIM_LogicalDevice.
DirtyBitSet
Data type: boolean
Access type: Read-only
If true, the Chkdsk method is automatically run by the system at the next restart.
DriveLetter
Data type: string
Access type: Read/write
Drive letter assigned to a volume. This property is NULL for volumes without drive letters.
DriveType
Data type: uint32
Access type: Read-only
Numeric value that corresponds to the type of disk drive that this logical disk represents.
The values are:
Value | Meaning |
---|---|
0 (0x0) | Unknown |
1 (0x1) | No Root Directory |
2 (0x2) | Removable Disk |
3 (0x3) | Local Disk |
4 (0x4) | Network Drive |
5 (0x5) | Compact Disk |
6 (0x6) | RAM Disk |
ErrorCleared
Data type: boolean
Access type: Read-only
If True, the error reported in LastErrorCode is now cleared. This property is inherited from CIM_LogicalDevice.
ErrorDescription
Data type: string
Access type: Read-only
More information about the error recorded in LastErrorCode, and information on any corrective actions that may be taken. This property is inherited from CIM_LogicalDevice.
ErrorMethodology
Data type: string
Access type: Read-only
Type of error detection and correction supported by this storage extent. This property is inherited from CIM_StorageExtent.
FileSystem
Data type: string
Access type: Read-only
File system on the logical disk.
Example: NTFS
FreeSpace
Data type: uint64
Access type: Read-only
Space, in bytes, available on the logical disk. This property is inherited from CIM_LogicalDisk.
For more information about using uint64 values in scripts, see Scripting in WMI.
IndexingEnabled
Data type: boolean
Access type: Read/write
If true, context indexing is enabled.
InstallDate
Data type: datetime
Access type: Read-only
Date and time the object was installed. This property does not require a value to indicate that the object is installed. This property is inherited from CIM_ManagedSystemElement.
Label
Data type: string
Access type: Read/write
Volume name of the logical disk. This property is null for volumes without a label. For FAT and FAT32 systems, the maximum length is 11 characters. For NTFS file systems, the maximum length is 32 characters.
LastErrorCode
Data type: uint32
Access type: Read-only
Last error code reported by the logical device. This property is inherited from CIM_LogicalDevice.
MaximumFileNameLength
Data type: uint32
Access type: Read-only
Maximum length, in characters, of a filename component supported by a Windows drive. A filename component is the portion of a filename between backslashes. This value can be used to indicate that long names are supported by the file system. For example, for a FAT file system that supports long names, the property stores the value 255—not the previous 8.3 indicator. Long names can be supported on systems that use the NTFS file system.
Example: 255
Name
Data type: string
Access type: Read-only
Label by which the object is known. When subclassed, this property can be overridden to be a key property. This property is inherited from CIM_ManagedSystemElement.
NumberOfBlocks
Data type: uint64
Access type: Read-only
Total number of consecutive blocks, each block the size of the value contained in the BlockSize property, which form this storage extent. Total size of the storage extent can be calculated by multiplying the value of the BlockSize property by the value of this property. If the value of BlockSize is 1, this property is the total size of the storage extent. This property is inherited from CIM_StorageExtent.
For more information about using uint64 values in scripts, see Scripting in WMI.
PNPDeviceID
Data type: string
Access type: Read-only
Indicates the Win32 Plug and Play device ID of the logical device. Example: *PNP030b.
PowerManagementCapabilities
Data type: uint16[]
Access type: Read-only
Indicates the specific power-related capabilities of the logical device. This can be one of the following values.
Value | Meaning |
---|---|
0 (0x0) | Unknown |
1 (0x1) | Not Supported |
2 (0x2) | Disabled |
3 (0x3) | Enabled The power management features are currently enabled but the exact feature set is unknown or the information is unavailable. |
4 (0x4) | Power Saving Modes Entered Automatically The device can change its power state based on usage or other criteria. |
5 (0x5) | Power State Settable The SetPowerState method is supported. This method is found on the parent CIM_LogicalDevice class and can be implemented. For more information, see Designing Managed Object Format (MOF) Classes. |
6 (0x6) | Power Cycling Supported The SetPowerState method can be invoked with the PowerState parameter set to 5 (Power Cycle). |
7 (0x7) | Timed Power-On Supported The SetPowerState method can be invoked with the PowerState parameter set to 5 (Power Cycle) and Time set to a specific date and time, or interval, for power-on. |
PowerManagementSupported
Data type: boolean
Access type: Read-only
True, if the device can be power managed (put into a power save state), otherwise False. This boolean does not indicate that power management features are currently enabled, or if enabled, what features are supported. Refer to the PowerManagementCapabilities array for this information. If this boolean is false, the integer value 1, for the string, "Not Supported", should be the only entry in the PowerManagementCapabilities array. This property is inherited from CIM_LogicalDevice.
Purpose
Data type: string
Access type: Read-only
Describes the media and its use. This property is inherited from CIM_StorageExtent.
QuotasEnabled
Data type: boolean
Access type: Read-only
If true, quota management is enabled for this volume.
QuotasIncomplete
Data type: boolean
Access type: Read-only
If true, quota management was used but is disabled. Incomplete refers to the information left in the file system after quota management is disabled.
QuotasRebuilding
Data type: boolean
Access type: Read-only
If true, the file system is in the process of compiling information and setting the disk up for quota management.
SerialNumber
Data type: uint32
Access type: Read-only
Serial number of the volume.
Example: A8C3D032
Status
Data type: string
Access type: Read-only
Current status of the object. Various operational and nonoperational statuses can be defined. Operational statuses include: "OK", "Degraded", and "Pred Fail" (an element, such as a SMART-enabled hard disk drive, may be functioning properly but predicting a failure in the near future). Nonoperational statuses include: "Error", "Starting", "Stopping", and "Service". The latter, "Service", could apply during mirror-resilvering of a disk, reload of a user permissions list, or other administrative work. Not all such work is online, yet the managed element is neither "OK" nor in one of the other states. This property is inherited from CIM_ManagedSystemElement.
The values are:
"OK"
"Error"
"Degraded"
"Unknown"
"Pred Fail"
"Starting"
"Stopping"
"Service"
"Stressed"
"NonRecover"
"No Contact"
"Lost Comm"
StatusInfo
Data type: uint16
Access type: Read-only
Indicates the state of the logical device. This can be one of the following values.
Value | Meaning |
---|---|
1 (0x1) | Other |
2 (0x2) | Unknown |
3 (0x3) | Enabled |
4 (0x4) | Disabled |
5 (0x5) | Not Applicable |
SupportsDiskQuotas
Data type: boolean
Access type: Read-only
If true, the volume supports disk quotas.
SupportsFileBasedCompression
Data type: boolean
Access type: Read-only
If True, the logical disk partition supports file-based compression, such as is the case with the NTFS file system. This property is False when the Compressed property is True.
SystemCreationClassName
Data type: string
Access type: Read-only
Indicates the system's creation class name.
SystemName
Data type: string
Access type: Read-only
Indicates the system's name.
Examples
The Two WMI Functions PowerShell example in the TechNet Gallery use Win32_Volume to recreate the Windows 8 get-Volume cmdlet.
The following PowerShell sample retrieves the allocation size of the drives on the target system.
$wql = "SELECT BlockSize,DriveLetter,Label FROM Win32_Volume WHERE FileSystem='NTFS'"
Get-WmiObject -Query $wql -ComputerName '.' | Select-Object DriveLetter,Label,BlockSize | Format-Table -AutoSize
The following PowerShell sample displays information on the volumes on the local system.
$volumes = get-wmiobject Win32_Volume
foreach ($vol in $volumes) {
"Volume: {0}" -f ++$i
"============================="
$vol | Format-List
}
Requirements
Minimum supported client |
None supported |
Minimum supported server |
Windows Server 2003 |
Namespace |
Root\CIMV2 |
MOF |
Vds.mof |
DLL |
Vdswmi.dll |