Condividi tramite


Metodo IVdsVolumeMF2::FormatEx (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.]

Formatta un volume del file system in una partizione.

Sintassi

HRESULT FormatEx(
  [in]  LPWSTR    pwszFileSystemTypeName,
  [in]  USHORT    usFileSystemRevision,
  [in]  ULONG     ulDesiredUnitAllocationSize,
  [in]  LPWSTR    pwszLabel,
  [in]  BOOL      bForce,
  [in]  BOOL      bQuickFormat,
  [in]  BOOL      bEnableCompression,
  [out] IVdsAsync **ppAsync
);

Parametri

[in] pwszFileSystemTypeName

Stringa Unicode con terminazione Null contenente il nome del file system con cui formattare il volume. Questo parametro può essere NULL o il nome di un file system Windows. Sono supportati i file system seguenti: "NTFS", "FAT", "FAT32", "UDF" e "EXFAT". Se questo parametro è NULL, viene usato il file system predefinito. Per altre informazioni, vedere VDS_FILE_SYSTEM_FORMAT_SUPPORT_FLAG.

[in] usFileSystemRevision

Revisione del file system, se presente. Questo membro viene espresso come numero decimale a 16 bit, dove un separatore decimale è implicito tra la seconda e la terza cifra. Ad esempio, un valore di 0x0250 indica la revisione 2.50.

[in] ulDesiredUnitAllocationSize

Dimensioni dell'unità di allocazione per il file system, in byte. Il valore deve essere una potenza di 2. Se il valore è 0, verrà usata un'unità di allocazione predefinita determinata dal tipo di file system. L'intervallo di unità di allocazione dipende dal file system.

[in] pwszLabel

Stringa Unicode con terminazione Null da assegnare al nuovo file system. La dimensione massima dell'etichetta dipende dal file system.

[in] bForce

Valore booleano che determina se viene forzato un formato del file system, indipendentemente dal fatto che la partizione sia in uso.

[in] bQuickFormat

Valore booleano che determina se un volume del file system è formattato rapidamente. Un formato rapido non verifica ogni settore nel volume.

[in] bEnableCompression

Valore booleano che determina se il volume del file system verrà creato con la compressione abilitata.

Nota Questo parametro viene ignorato se il file system non è NTFS.
 

[out] ppAsync

Puntatore a un'interfaccia IVdsAsync che al completamento riceve l'interfaccia IVdsAsync per monitorare e controllare questa operazione. I chiamanti devono rilasciare l'interfaccia ricevuta al termine dell'operazione.

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
S_OK
0x0000000L
Il file system è stato formattato correttamente.
VDS_E_OPERATION_DENIED
0x8004240AL
L'operazione viene negata se il chiamante tenta di formattare il sistema, l'avvio, l'arresto anomalo, l'ibernazione o il volume del file di pagina.
VDS_E_OBJECT_STATUS_FAILED
0x80042431L
Il volume non è riuscito.
VDS_E_PACK_OFFLINE
0x8004244L
Il pacchetto contenente il volume non è accessibile. Tutti i volumi in un pacchetto offline non sono accessibili.
VDS_E_FS_NOT_DETERMINED
0x80042593L
Impossibile determinare il file system predefinito.
 

Inoltre, l'interfaccia IVdsAsync può restituire i codici di errore e gli avvisi correlati seguenti:

Codice/valore restituito Descrizione
VDS_E_INCOMPATIBLE_FILE_SYSTEM
0x80042425L
Il file system non è compatibile.
VDS_E_INCOMPATIBLE_MEDIA
0x80042426L
Il supporto non è compatibile.
VDS_E_ACCESS_DENIED
0x80042427L
Accesso negato.
VDS_E_MEDIA_WRITE_PROTECTED
0x80042428L
Il supporto è protetto da scrittura.
VDS_E_BAD_LABEL
0x80042429L
L'etichetta non è valida.
VDS_E_CANT_QUICK_FORMAT
0x8004242AL
Il volume non può essere formattato rapidamente.
VDS_E_IO_ERROR
0x8004242BL
Si è verificato un errore di I/O durante il formato.
VDS_E_VOLUME_TOO_SMALL
0x8004242CL
La dimensione del volume è troppo piccola per formattare.
VDS_E_VOLUME_TOO_BIG
0x8004242DL
La dimensione del volume è troppo grande per formattare.
VDS_E_CLUSTER_SIZE_TOO_SMALL
0x8004242EL
Le dimensioni del cluster sono troppo piccole per consentire la formattazione.
VDS_E_CLUSTER_SIZE_TOO_BIG
0x8004242FL
Le dimensioni del cluster sono troppo grandi per consentire la formattazione.
VDS_E_CLUSTER_COUNT_BEYOND_32BITS
0x80042430L
Il numero di cluster è troppo grande per essere rappresentato come intero a 32 bit.
VDS_S_VOLUME_COMPRESS_FAILED
0x00042443L
Il file system è formattato ma non compresso.
VDS_E_CANT_INVALIDATE_FVE
0x80042592L
Non è stato possibile disabilitare la crittografia BitLocker per il volume.

Commenti

Se una partizione OEM è formattata come FAT o FAT32, il tipo di partizione non cambia. Se è formattato con NTFS, il tipo di partizione viene modificato in PARTITION_IFS (0x07). Per informazioni sui tipi di partizione, vedere CREATE_PARTITION_PARAMETERS.

Se questo metodo viene chiamato per un volume protetto dalla crittografia full-volume di BitLocker, la crittografia BitLocker è disabilitata per il volume finché l'utente non lo abilita nuovamente.

Per altre informazioni sui limiti del file system, ad esempio dimensioni minime e massime dell'unità di allocazione (denominate anche dimensioni del cluster), vedere Informazioni di riferimento tecnico NTFS e FAT Technical Reference.

Requisiti

   
Client minimo supportato Windows Vista [solo app desktop]
Server minimo supportato Windows Server 2008 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione vds.h
Libreria Uuid.lib

Vedi anche

IVdsVolumeMF2