Metodo IVdsPack::MigrateDisks (vds.h)
[A partire da Windows 8 e Windows Server 2012, l'interfaccia COM del servizio disco virtuale viene sostituita dall'API gestione archiviazione di Windows.]
Esegue la migrazione di un set di dischi da un pacchetto a un altro pacchetto.
Sintassi
HRESULT MigrateDisks(
[in] VDS_OBJECT_ID *pDiskArray,
[in] LONG lNumberOfDisks,
[in] VDS_OBJECT_ID TargetPack,
[in] BOOL bForce,
[in] BOOL bQueryOnly,
[out] HRESULT *pResults,
[out] BOOL *pbRebootNeeded
);
Parametri
[in] pDiskArray
Puntatore a una matrice di GUID; uno per ogni disco.
[in] lNumberOfDisks
Numero di dischi di cui eseguire la migrazione.
[in] TargetPack
GUID dell'oggetto pack.
[in] bForce
Se questo parametro è impostato su TRUE, VDS ignora tutti gli errori di questo metodo e tenta di eseguire la migrazione dei dischi in modo incondizionato. Se è impostata su FALSE, l'operazione non procede. In alcuni casi, una migrazione forzata può causare la perdita di dati.
[in] bQueryOnly
Se questo parametro è impostato su TRUE, la migrazione non si verifica. Se è impostata su FALSE, l'operazione procede.
[out] pResults
Indirizzo di una matrice allocata dal chiamante di valori HRESULT . Il numero di elementi nella matrice è lNumberOfDisks.
Se è possibile eseguire la migrazione di un disco o è stata eseguita correttamente la migrazione, l'elemento della matrice corrispondente riceve S_OK; in caso contrario, riceve il codice di avviso o il codice di errore restituito dal provider. Per l'elenco dei codici dei risultati aggiuntivi, vedere Valori restituiti.
[out] pbRebootNeeded
Se questo parametro è impostato su TRUE, è necessario riavviare il computer per completare l'operazione. Se è impostata su FALSE, l'operazione viene completata senza riavviare.
Valore restituito
Questo metodo può restituire valori HRESULT standard, ad esempio E_INVALIDARG o E_OUTOFMEMORY e valori restituiti specifici di VDS. Può anche restituire codici di errore di sistema convertiti usando la macro HRESULT_FROM_WIN32 . Gli errori possono provenire dal VDS stesso o dal provider VDS sottostante in uso. I valori restituiti possibili includono quanto segue.
Codice/valore restituito | Descrizione |
---|---|
|
La migrazione è stata completata correttamente. |
|
Almeno uno dei dischi non può essere convertito o può essere convertito con avviso. |
|
Uno dei dischi non è disponibile. |
|
Si è tentato di importare un subset dei dischi nel pacchetto esterno. |
È possibile restituire gli avvisi e gli errori seguenti tramite pResults:
Codice/valore restituito | Descrizione |
---|---|
|
Numero di partizione della partizione di avvio modificato come risultato dell'operazione di migrazione. |
|
Il disco selezionato non dispone di spazio disponibile sufficiente per completare l'operazione. |
|
È stata rilevata una partizione attiva sul disco selezionato e non è la partizione attiva usata per avviare il sistema operativo attivo. |
|
Impossibile leggere le informazioni sulla partizione. |
|
È stata rilevata una partizione con un tipo sconosciuto nel disco selezionato. |
|
Il disco GPT selezionato contiene una partizione di dati non di base, preceduta da e seguita da una o più partizioni di dati di base. |
|
Impossibile aprire un volume sul disco selezionato. |
Commenti
VDS implementa questo metodo.
Un singolo pacchetto può avere un solo disco di base. Di conseguenza, è possibile eseguire la migrazione di un solo disco alla volta tra un pacchetto di base e dinamico.
È consigliabile forzare questa operazione durante la conversione di un disco di base in formato disco dinamico e la fine del disco non dispone di spazio sufficiente per il database LDM. Impostare il parametro bForce su true e forzare l'operazione nonostante la limitazione dello spazio. Analogamente, se una partizione OEM si trova al centro di un disco MBR con spazio libero o volumi di dati su entrambi i lati.
Dopo la migrazione dei dischi dinamici a un pacchetto dinamico, è necessario usare il metodo IVdsPack::GetProperties per determinare se il pacchetto di origine o di destinazione è ora il pacchetto online.
Per informazioni sull'uso del metodo MigrateDisks per aggiungere dischi esterni a un pacchetto, vedere Aggiunta di dischi esterni a un pacchetto.
Requisiti
Client minimo supportato | Windows Vista [solo app desktop] |
Server minimo supportato | Windows Server 2003 [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | vds.h |
Libreria | Uuid.lib |