Partager via


Méthode DetachVirtualHardDisk de la classe Msvm_MountedStorageImage

Détache l’image de stockage montée associée à cette classe.

Syntaxe

uint32 DetachVirtualHardDisk();

Paramètres

Cette méthode n’a aucun paramètre.

Valeur retournée

Type : uint32

Cette méthode peut retourner l’une des valeurs suivantes.

Réussite (0)

Échec (1)

Notes

L’accès à la classe Msvm_MountedStorageImage peut être restreint par le filtrage UAC. Pour plus d’informations, consultez Contrôle de compte d’utilisateur et WMI.

Exemples

L’exemple C# suivant montre comment détacher un fichier de disque dur virtuel. Les utilitaires référencés se trouvent dans Utilitaires communs pour les exemples de virtualisation (V2).

public static void DetachVirtualHardDisk(string path)
{
    ManagementScope scope = new ManagementScope(@"root\virtualization\V2", null);

    ManagementClass mountedStorageImageServiceClass = new ManagementClass("Msvm_MountedStorageImage");

    mountedStorageImageServiceClass.Scope = scope;

    using (ManagementObjectCollection collection = mountedStorageImageServiceClass.GetInstances())
    {
        foreach (ManagementObject image in collection)
        {
            using (image)
            {
                string name = image.GetPropertyValue("Name").ToString();
                if (string.Equals(name, path, StringComparison.OrdinalIgnoreCase))
                {
                    ManagementBaseObject outParams = image.InvokeMethod("DetachVirtualHardDisk", null, null);

                    if ((UInt32)outParams["ReturnValue"] == 0)
                    {
                        Console.WriteLine("{0} was detached successfully.", path);
                    }
                    else
                    {
                        Console.WriteLine("Unable to dettach {0}", path);
                    }

                    outParams.Dispose();

                    break;
                }

                image.Dispose();
            }
        }
    }
}

Spécifications

Condition requise Valeur
Client minimal pris en charge
Windows 8 [applications de bureau uniquement]
Serveur minimal pris en charge
Windows Server 2012 [applications de bureau uniquement]
Espace de noms
Racine\Virtualisation\V2
MOF
WindowsVirtualization.V2.mof
DLL
Vmms.exe

Voir aussi

Msvm_MountedStorageImage