ValidateVirtualHardDisk-Methode der Msvm _ ImageManagementService-Klasse
Bestimmt, ob eine virtuelle Festplattendatei gültig ist.
Syntax
uint32 ValidateVirtualHardDisk(
[in] string Path,
[out] CIM_ConcreteJob REF Job
);
Parameter
-
Pfad [ In]
-
Typ: Zeichenfolge
Ein vollqualifizierten Pfad, der den Speicherort der virtuellen Festplattendatei angibt.
-
Auftrag [ out]
-
Typ: CIM _ ConcreteJob
Wenn der Vorgang asynchron ausgeführt wird, gibt diese Methode 4096 zurück, und dieser Parameter enthält einen Verweis auf ein objekt, das von CIM _ ConcreteJobabgeleitet wurde.
Rückgabewert
Typ: uint32
Diese Methode kann einen der folgenden Werte zurückgeben.
-
Abgeschlossen ohne Fehler (0)
-
Überprüfte Methodenparameter – Auftragsstart (4096)
-
Fehler (32768)
-
Zugriff verweigert (32769)
-
Nicht unterstützt (32770)
-
Status ist unbekannt (32771)
-
Timeout (32772)
-
Ungültiger Parameter (32773)
-
System wird verwendet (32774)
-
Ungültiger Zustand für diesen Vorgang (32775)
-
Falscher Datentyp (32776)
-
System ist nicht verfügbar (32777)
-
Nicht genügend Arbeitsspeicher (32778)
-
Datei nicht gefunden (32779)
-
VHD-Differenzierender Kettenzyklus erkannt (32787)
Hinweise
Wenn es sich bei der virtuellen Festplatte um einen differenzierenden Datenträger handelt, wird die gesamte kette virtueller Datenträger geöffnet. Wenn der Link in der Datenträgerkette unterbrochen wird, wird ein Auftragsobjekt mit dem entsprechenden Fehler initialisiert zurückgegeben, und die untergeordneten und übergeordneten Eigenschaften werden an den Speicherort initialisiert, an dem der Link unterbrochen wird.
Der Zugriff auf die Msvm _ ImageManagementService-Klasse kann durch die UAC-Filterung eingeschränkt werden. Weitere Informationen finden Sie unter Benutzerkontensteuerung und WMI.
Beispiele
Im folgenden C#-Beispiel wird ein Image einer virtuellen Festplatte überprüft. Die referenzierten Hilfsprogramme finden Sie unter Allgemeine Hilfsprogramme für die Virtualisierungsbeispiele (V2).
public static void ValidateVirtualHardDisk(string vhdPath)
{
ManagementScope scope = new ManagementScope(@"root\virtualization\v2", null);
ManagementObject imageService = Utility.GetServiceObject(scope, "Msvm_ImageManagementService");
ManagementBaseObject inParams = imageService.GetMethodParameters("ValidateVirtualHardDisk");
inParams["Path"] = vhdPath;
ManagementBaseObject outParams = imageService.InvokeMethod("ValidateVirtualHardDisk", inParams, null);
if ((UInt32)outParams["ReturnValue"] == ReturnCode.Started)
{
if (Utility.JobCompleted(outParams, scope))
{
Console.WriteLine("{0} is a valid virtual hard disk.", inParams["Path"]);
}
else
{
Console.WriteLine("Unable to validate {0}", inParams["Path"]);
}
}
outParams.Dispose();
inParams.Dispose();
imageService.Dispose();
}
Anforderungen
| Anforderung | Wert |
|---|---|
| Unterstützte Mindestversion (Client) |
[Windows 8 Nur Desktop-Apps] |
| Unterstützte Mindestversion (Server) |
[Windows Server 2012 Nur Desktop-Apps] |
| Namespace |
Root \ Virtualization \ V2 |
| MOF |
|
| DLL |
|