Méthode AttachVirtualHardDisk de la classe Msvm_ImageManagementService
Joint un fichier de disque dur virtuel en mode bouclage.
Syntaxe
uint32 AttachVirtualHardDisk(
[in] string Path,
[in] boolean AssignDriveLetter,
[in] boolean ReadOnly,
[out] CIM_ConcreteJob REF Job
);
Paramètres
-
Chemin d’accès [in]
-
Chemin d’accès complet qui spécifie l’emplacement du fichier de disque dur virtuel à joindre.
-
AssignDriveLetter [in]
-
Indique si des lettres de lecteur sont affectées aux volumes du disque.
-
ReadOnly [in]
-
Indique si le disque dur attaché doit être en lecture seule.
-
Travail [out]
-
Si l’opération est effectuée de manière asynchrone, cette méthode retourne 4096 et ce paramètre contient une référence à un objet dérivé de CIM_ConcreteJob.
Valeur retournée
Cette méthode retourne l’une des valeurs suivantes.
-
Terminé avec aucune erreur (0)
-
Paramètres de méthode vérifiés - Travail démarré (4096)
-
Échec (32768)
-
Accès refusé (32769)
-
Non pris en charge (32770)
-
État inconnu (32771)
-
Délai d’expiration (32772)
-
Paramètre non valide (32773)
-
Le système est en cours d’utilisation (32774)
-
État non valide pour cette opération (32775)
-
Type de données incorrect (32776)
-
Le système n’est pas disponible (32777)
-
Mémoire insuffisante (32778)
-
Fichier introuvable (32779)
Notes
Pour détacher le disque dur virtuel, utilisez la méthode Msvm_MountedStorageImage.DetachVirtualHardDisk .
L’accès à la classe Msvm_ImageManagementService 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 attacher 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 AttachVirtualHardDisk(string path)
{
ManagementScope scope = new ManagementScope(@"root\virtualization\V2", null);
ManagementObject imageService = Utility.GetServiceObject(scope, "Msvm_ImageManagementService");
ManagementBaseObject inParams = imageService.GetMethodParameters("AttachVirtualHardDisk");
inParams["Path"] = path;
inParams["AssignDriveLetter"] = true;
inParams["ReadOnly"] = false;
ManagementBaseObject outParams = imageService.InvokeMethod("AttachVirtualHardDisk", inParams, null);
if ((UInt32)outParams["ReturnValue"] == ReturnCode.Started)
{
if (Utility.JobCompleted(outParams, scope))
{
Console.WriteLine("{0} was attached successfully.", inParams["Path"]);
}
else
{
Console.WriteLine("Unable to attach {0}", inParams["Path"]);
}
}
outParams.Dispose();
inParams.Dispose();
imageService.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 |
|
DLL |
|