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 may have a drive letter assigned to it. A single hard disk can have multiple volumes, and volumes can also span multiple disks. The Win32_Volume class does not support diskette drive management.
{'Description':'This parameter is the directory where the volume is to be mounted.','in':True}
Description
'This method is used to add a mount point directory for the volume. The result of this method is the creation of a Win32_MountPoint class associating this volume with the Win32_Directory instance representing the directory specified in the parameter list'
Implemented
True
MappingStrings
['Win32API|File System Functions|SetVolumeMountPoint']
Values
['Success', 'Access denied', 'Invalid argument', 'Specified directory not empty', 'Specified directory not found', 'Volume mount points not supported', 'Unknown error']
AddMountPoint method is in 1 class (Win32_Volume) of ROOT\cimv2 and in 2 namespaces
{'Description':'This parameter indicates what should be done to errors found on the disk. If true, then errors are fixed.','in':True}
VigorousIndexCheck
boolean
1
✓
-
{'Description':'This parameter indicates whether a vigorous check of index entries should be performed.','in':True}
SkipFolderCycle
boolean
2
✓
-
{'Description':'This parameter indicates whether the folder cycle checking should be skipped or not.','in':True}
ForceDismount
boolean
3
✓
-
{'Description':'This parameter indicates whether the volume should be forced to dismount before checking.','in':True}
RecoverBadSectors
boolean
4
✓
-
{'Description':'This parameter indicates whether the bad sectors should be located and the readable information should be recovered from these sectors.','in':True}
OkToRunAtBootUp
boolean
5
✓
-
{'Description':'This parameter indicates whether the chkdsk operation should be performed at next boot up time, in case the operation could not be performed because the disk was locked at time the method was called.','in':True}
Description
'This method invokes the chkdsk operation on the volume. The method is applicable to only those volume instances that represent a physical disk in the machine. It is not applicable to mapped logical drives.'
Implemented
True
MappingStrings
['Fmifs.dll | Method ChkDskExRoutine']
Values
['Success', 'Success - Volume locked and chkdsk scheduled on reboot', 'Unsupported file system', 'Unknown file system', 'No media in drive', 'Unknown error']
{'Description':'This parameter is used to force the defrag even if free space on the disk is low.','in':True}
DefragAnalysis
object
1
-
✓
{'Description':'This parameter is a Win32_DefragAnalysis object that contains properties describing the extent to which the volume is fragmented.','out':True}
Description
'This method is used to defrag the volume.'
Implemented
True
Values
['Success', 'Access denied', 'Volume not supported', 'Volume dirty bit is set', 'Not enough free space', 'Corrupt Master File Table detected', 'Call Cancelled', 'Call cancellation request too late', 'Defrag engine is already running', 'Unable to connect to defrag engine', 'Defrag engine error', 'Unknown error']
Defrag method is in 1 class (Win32_Volume) of ROOT\cimv2 and in 2 namespaces
{'Description':'This parameter indicates whether defragmentation or the volume is recommended.','out':True}
DefragAnalysis
object
1
-
✓
{'Description':'This parameter is a Win32_DefragAnalysis object that contains properties describing the extent to which the volume is fragmented.','out':True}
Description
'This method is used to generate a defrag analysis for the volume.'
Implemented
True
Values
['Success', 'Access denied', 'Volume not supported', 'Volume dirty bit is set', 'Not enough free space', 'Corrupt Master File Table detected', 'Call Cancelled', 'Call cancellation request too late', 'Defrag engine is already running', 'Unable to connect to defrag engine', 'Defrag engine error', 'Unknown error']
DefragAnalysis method is in 1 class (Win32_Volume) of ROOT\cimv2 and in 2 namespaces
{'Description':'This parameter indicates whether the volume should be forced to dismount if open handles exist.','in':True}
Permanent
boolean
1
✓
-
{'Description':'This parameter indicates whether the volume should be dismounted to a no-automount (offline) state. The volume may be returned to the automount state by explicitly calling the Mount method or creating a mount point for the volume.','in':True}
Description
'This method is used to dismount a volume from the file system.'
Implemented
True
MappingStrings
['Win32API|File System Functions|FSCTRL_DISMOUNT_VOLUME,IOCTL_VOLUME_OFFLINE']
Values
['Success', 'Access denied', 'Volume has mount points', 'Volume does not support the no-automount state', 'Force option required', 'Unknown error', 'Forced dismount failed because the volume is locked.']
Dismount method is in 1 class (Win32_Volume) of ROOT\cimv2 and in 3 namespaces
{'Description':'This parameter is used to specify the list of volumes that should be excluded from autochk at next reboot. The string syntax consists of the the drive letter followed by a colon for the logical disk.','in':True}
Description
'This method is used to exclude volumes from the chkdsk operation to be run at the next reboot. If not excluded, chkdsk is performed on the volume if the dirty bit has been set for the disk. Note that the calls to exclude volumes are not cumulative. That is, if a call is made to excluded some volumes, then the new list is not added to the list of ones that were already marked for exclusion, instead the new list of volumes overwrites the previous one. The method is applicable to only those volume instances that represent a physical disk in the machine and is not applicable to mapped logical drives.'
{'Description':'The file system format to use for the volume.','DisplayName':'File System','in':True,'read':True,'ValueMap':['NTFS', 'FAT32', 'FAT', 'UDF', 'EXFAT'],'Values':['NTFS', 'FAT32', 'FAT', 'UDF', 'EXFAT']}
QuickFormat
boolean
1
✓
-
{'Description':'Specifies whether to perform a quick format by removing files from the disk without scanning the disk for bad sectors. Use this option only if this disk has been previously formatted and you are sure the disk is not damaged.','DisplayName':'Quick Format','in':True,'read':True}
ClusterSize
uint32
2
✓
-
{'Description':'Specifies the disk allocation unit size or cluster size. All file systems used by this version of Windows organize your hard disk based on cluster size, which represents the smallest amount of disk space that can be allocated to hold a file. The smaller the cluster size you use, the more efficiently your disk stores information. If no cluster size is specified during format, Windows�picks defaults based on the size of the volume. These defaults have been selected to reduce the amount of space lost and to reduce the amount of fragmentation on the volume. For general use, default setting (zero) are strongly recommended.','DisplayName':'Cluster Size','in':True,'read':True}
Label
string
3
✓
-
{'Description':'The label to use for the new volume. The volume label can contain up to 11 characters for FAT and FAT32 volumes or up to 32 characters for NTFS volumes.','DisplayName':'Label','in':True,'read':True}
EnableCompression
boolean
4
✓
-
{'Description':'Indicates if the volume should be enabled for compression','DisplayName':'Enable Compression','in':True,'read':True}
Version
uint32
5
✓
-
{'Description':'Version number of the specified file system. This is currently only valid for UDF. The default value (zero) will cause the format engine to select the version.','DisplayName':'Version','in':True,'read':True,'ValueMap':['0', '256', '257', '258', '336', '513', '514', '592'],'Values':['Default', '1.00', '1.01', '1.02', '1.50', '2.00', '2.01', '2.50']}
Description
'This method is used to format the volume.'
Implemented
True
MappingStrings
['Fmifs.dll | Method FormatRoutine']
Values
['Success', 'Unsupported file system', 'Incompatible media in drive', 'Access denied', 'Call cancelled', 'Call cancellation request too late', 'Volume write protected', 'Volume lock failed', 'Unable to quick format', 'Input/Output error', 'Invalid volume label', 'No media in drive', 'Volume is too small', 'Volume is too large', 'Volume is not mounted', 'Cluster size is too small', 'Cluster size is too large', 'Cluster size is beyond 32 bits', 'Unknown error', 'Failed to enable compression after format completed']
{'Description':'This parameter is used to specify the list of volumes that should be scheduled for autochk at next reboot. The string syntax consists of the the drive letter, mount point name, or volume GUID name for the volume.','in':True}
Description
'This method is used schedule chkdsk to be run at the next reboot if the dirty bit has been set.The method is applicable to only those volume instances that represent a physical disk in the machine. It is not applicable to mapped logical drives. '
'Requests a reset of the logical device. The return value should be 0 if the request was successfully executed, 1 if the request is not supported and some other value if an error occurred.'
'SetPowerState defines the desired power state for a logical device and when a device should be put into that state. The desired power state is specified by setting the PowerState parameter to one of the following integer values: 1="Full Power", 2="Power Save - Low Power Mode", 3="Power Save - Standby", 4="Power Save - Other", 5="Power Cycle" or 6="Power Off". The Time parameter (for all state changes, except 5, "Power Cycle") indicates when the power state should be set, either as a regular date-time value or as an interval value (where the interval begins when the method invocation is received). When the PowerState parameter is equal to 5, "Power Cycle", the Time parameter indicates when the device should power on again. Power off is immediate. SetPowerState should return 0 if successful, 1 if the specified PowerState and Time request is not supported, and some other value if any other error occurred. In a subclass, the set of possible return codes could be specified, using a ValueMap qualifier on the method. The strings to which the ValueMap contents are 'translated' may also be specified in the subclass as a Values array qualifier.'
'If TRUE, the Automount property indicates that the volume will be mounted to the file system automatically when the first I/O is issued. Otherwise it will not be mounted until explicitly mounted with the Mount method or by adding a drive letter or mount point.'
DisplayName
'Auto Mount Enabled'
read
True
Automount property is in 1 class (Win32_Volume) of ROOT\cimv2 and in 2 namespaces
'If TRUE, the volume exists as a single compressed entity, such as a DoubleSpace volume.If file based compression is supported (such as on NTFS), this property will be FALSE.'
'The DriveType property contains a numeric value corresponding to the type of disk drive this logical disk represents. Please refer to the Platform SDK documentation for additional values. Example: A CD-ROM drive would return 5.'
'The Label property indicates the volume name of the logical disk. Constraints: Maximum 32 characters. This property is NULL for a volume without a label.'
DisplayName
'Label'
read
True
write
True
Label property is in 1 class (Win32_Volume) of ROOT\cimv2 and in 4 namespaces
'Maximum length of a filename component supported by the Windows drive. A filename component is that portion of a filename between backslashes. The value can be used to indicate that long names are supported by the specified file system. For example, for a FAT file system supporting long names, the function stores the value 255, rather than the previous 8.3 indicator. Long names can also be supported on systems that use the NTFS file system. Example: 255'
DisplayName
'Maximum File Name Length'
read
True
MaximumFileNameLength property is in 1 class (Win32_Volume) of ROOT\cimv2 and in 2 namespaces
'The QuotasIncomplete property indicates that quota management was used but has been disabled. Incomplete refers to the information left in the file system after quota management was disabled.'
'The QuotasRebuilding property indicates that the file system is in the active process of compiling information and setting the disk up for quota management.'
'Access describes whether the media is readable (value=1), writeable (value=2), or both (value=3). "Unknown" (0) and "Write Once" (4) can also be defined.'
'The availability and status of the device. For example, the Availability property indicates that the device is running and has full power (value=3), or is in a warning (4), test (5), degraded (10) or power save state (values 13-15 and 17). Regarding the power saving states, these are defined as follows: Value 13 ("Power Save - Unknown") indicates that the device is known to be in a power save mode, but its exact status in this mode is unknown; 14 ("Power Save - Low Power Mode") indicates that the device is in a power save state but still functioning, and may exhibit degraded performance; 15 ("Power Save - Standby") describes that the device is not functioning but could be brought to full power 'quickly'; and value 17 ("Power Save - Warning") indicates that the device is in a warning state, though also in a power save mode.'
'Size in bytes of the blocks which form this StorageExtent. If variable block size, then the maximum block size in bytes should be specified. If the block size is unknown or if a block concept is not valid (for example, for Aggregate Extents, Memory or LogicalDisks), enter a 1.'
'Indicates the Win32 Configuration Manager error code. The following values may be returned: 0 This device is working properly. 1 This device is not configured correctly. 2 Windows cannot load the driver for this device. 3 The driver for this device might be corrupted, or your system may be running low on memory or other resources. 4 This device is not working properly. One of its drivers or your registry might be corrupted. 5 The driver for this device needs a resource that Windows cannot manage. 6 The boot configuration for this device conflicts with other devices. 7 Cannot filter. 8 The driver loader for the device is missing. 9 This device is not working properly because the controlling firmware is reporting the resources for the device incorrectly. 10 This device cannot start. 11 This device failed. 12 This device cannot find enough free resources that it can use. 13 Windows cannot verify this device's resources. 14 This device cannot work properly until you restart your computer. 15 This device is not working properly because there is probably a re-enumeration problem. 16 Windows cannot identify all the resources this device uses. 17 This device is asking for an unknown resource type. 18 Reinstall the drivers for this device. 19 Your registry might be corrupted. 20 Failure using the VxD loader. 21 System failure: Try changing the driver for this device. If that does not work, see your hardware documentation. Windows is removing this device. 22 This device is disabled. 23 System failure: Try changing the driver for this device. If that doesn't work, see your hardware documentation. 24 This device is not present, is not working properly, or does not have all its drivers installed. 25 Windows is still setting up this device. 26 Windows is still setting up this device. 27 This device does not have valid log configuration. 28 The drivers for this device are not installed. 29 This device is disabled because the firmware of the device did not give it the required resources. 30 This device is using an Interrupt Request (IRQ) resource that another device is using. 31 This device is not working properly because Windows cannot load the drivers required for this device.'
['This device is working properly.', 'This device is not configured correctly.', 'Windows cannot load the driver for this device.', 'The driver for this device might be corrupted, or your system may be running low on memory or other resources.', 'This device is not working properly. One of its drivers or your registry might be corrupted.', 'The driver for this device needs a resource that Windows cannot manage.', 'The boot configuration for this device conflicts with other devices.', 'Cannot filter.', 'The driver loader for the device is missing.', 'This device is not working properly because the controlling firmware is reporting the resources for the device incorrectly.', 'This device cannot start.', 'This device failed.', 'This device cannot find enough free resources that it can use.', 'Windows cannot verify this device's resources.', 'This device cannot work properly until you restart your computer.', 'This device is not working properly because there is probably a re-enumeration problem.', 'Windows cannot identify all the resources this device uses.', 'This device is asking for an unknown resource type.', 'Reinstall the drivers for this device.', 'Failure using the VxD loader.', 'Your registry might be corrupted.', 'System failure: Try changing the driver for this device. If that does not work, see your hardware documentation. Windows is removing this device.', 'This device is disabled.', 'System failure: Try changing the driver for this device. If that doesn't work, see your hardware documentation.', 'This device is not present, is not working properly, or does not have all its drivers installed.', 'Windows is still setting up this device.', 'Windows is still setting up this device.', 'This device does not have valid log configuration.', 'The drivers for this device are not installed.', 'This device is disabled because the firmware of the device did not give it the required resources.', 'This device is using an Interrupt Request (IRQ) resource that another device is using.', 'This device is not working properly because Windows cannot load the drivers required for this device.']
'CreationClassName indicates the name of the class or the subclass used in the creation of an instance. 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.'
'ErrorDescription is a free-form string supplying more information about the error recorded in LastErrorCode property, and information on any corrective actions that may be taken.'
'The InstallDate property is datetime value indicating when the object was installed. A lack of a value does not indicate that the object is not installed.'
'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.'
'Indicates the specific power-related capabilities of the logical device. The array values, 0="Unknown", 1="Not Supported" and 2="Disabled" are self-explanatory. The value, 3="Enabled" indicates that the power management features are currently enabled but the exact feature set is unknown or the information is unavailable. "Power Saving Modes Entered Automatically" (4) describes that a device can change its power state based on usage or other criteria. "Power State Settable" (5) indicates that the SetPowerState method is supported. "Power Cycling Supported" (6) indicates that the SetPowerState method can be invoked with the PowerState input variable set to 5 ("Power Cycle"). "Timed Power On Supported" (7) indicates that the SetPowerState method can be invoked with the PowerState input variable set to 5 ("Power Cycle") and the Time parameter set to a specific date and time, or interval, for power-on.'
read
True
Values
['Unknown', 'Not Supported', 'Disabled', 'Enabled', 'Power Saving Modes Entered Automatically', 'Power State Settable', 'Power Cycling Supported', 'Timed Power On Supported']
'Boolean indicating that the Device can be power managed - ie, put into a power save state. 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.'
'The Status property is a string indicating the current status of the object. Various operational and non-operational statuses can be defined. Operational statuses are "OK", "Degraded" and "Pred Fail". "Pred Fail" indicates that an element may be functioning properly but predicting a failure in the near future. An example is a SMART-enabled hard drive. Non-operational statuses can also be specified. These are "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 on-line, yet the managed element is neither "OK" nor in one of the other states.'
'StatusInfo is a string indicating whether the logical device is in an enabled (value = 3), disabled (value = 4) or some other (1) or unknown (2) state. If this property does not apply to the logical device, the value, 5 ("Not Applicable"), should be used.'
'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 may have a drive letter assigned to it. A single hard disk can have multiple volumes, and volumes can also span multiple disks. The Win32_Volume class does not support diskette drive management.'