GetVirtualHardDiskState method of the Msvm_ImageManagementService class
Retrieves state information for a virtual hard disk file.
Syntax
uint32 GetVirtualHardDiskState(
[in] string Path,
[out] string State,
[out] CIM_ConcreteJob REF Job
);
Parameters
-
Path [in]
-
The fully qualified path of the disk image file.
-
State [out]
-
If successful, receives an embedded instance of the Msvm_VirtualHardDiskState class that contains the state information for the virtual hard disk.
-
Job [out]
-
If the operation is performed asynchronously, this method will return 4096, and this parameter will contain a reference to an object derived from CIM_ConcreteJob.
Return value
This method returns one of the following values.
-
Completed with No Error (0)
-
Method Parameters Checked - Job Started (4096)
-
Failed (32768)
-
Access Denied (32769)
-
Not Supported (32770)
-
Status is unknown (32771)
-
Timeout (32772)
-
Invalid parameter (32773)
-
System is in use (32774)
-
Invalid state for this operation (32775)
-
Incorrect data type (32776)
-
System is not available (32777)
-
Out of memory (32778)
-
File not found (32779)
Remarks
Access to the Msvm_ImageManagementService class might be restricted by UAC Filtering. For more information, see User Account Control and WMI.
Examples
The following C# example shows how to call the GetVirtualHardDiskState method. The referenced utilities can be found in Common utilities for the virtualization samples (V2).
public static void GetVirtualHardDiskState(string vhdPath)
{
ManagementScope scope = new ManagementScope(@"root\virtualization\V2", null);
ManagementObject imageService = Utility.GetServiceObject(scope, "Msvm_ImageManagementService");
ManagementBaseObject inParams = imageService.GetMethodParameters("GetVirtualHardDiskState");
inParams["Path"] = vhdPath;
ManagementBaseObject outParams = imageService.InvokeMethod("GetVirtualHardDiskState", inParams, null);
if ((UInt32)outParams["ReturnValue"] == ReturnCode.Started)
{
if (Utility.JobCompleted(outParams, scope))
{
Console.WriteLine("GetVirtualHardDiskState was successful.");
}
else
{
Console.WriteLine("GetVirtualHardDiskState was not successful.");
}
}
else if ((UInt32)outParams["ReturnValue"] == ReturnCode.Completed)
{
string diskStateString = outParams["State"].ToString();
Utility.PrintEmbeddedInstance(diskStateString);
}
outParams.Dispose();
inParams.Dispose();
imageService.Dispose();
}
Requirements
Requirement | Value |
---|---|
Minimum supported client |
Windows 8 [desktop apps only] |
Minimum supported server |
Windows Server 2012 [desktop apps only] |
Namespace |
Root\Virtualization\V2 |
MOF |
|
DLL |
|