Método IVdsDisk3::QueryFreeExtents (vds.h)
[Começando com Windows 8 e Windows Server 2012, a interface COM do Serviço de Disco Virtual é substituída pela API de Gerenciamento de Armazenamento do Windows.]
Retorna as extensões livres no disco e as alinha ao tamanho de alinhamento especificado.
Sintaxe
HRESULT QueryFreeExtents(
[in] ULONG ulAlign,
[out] VDS_DISK_FREE_EXTENT **ppFreeExtentArray,
[out] LONG *plNumberOfFreeExtents
);
Parâmetros
[in] ulAlign
O tamanho do alinhamento, em bytes. Esse valor deve ser um múltiplo do tamanho do setor de disco. Se esse parâmetro for zero, o valor de alinhamento padrão para o volume será usado. O alinhamento padrão depende do tamanho do disco em que o volume está localizado. Todas as partições e volumes são alinhados usando os valores na seguinte chave do Registro:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\vds\Alignment
Se essa chave do Registro não estiver definida, o alinhamento padrão será de 1 MB se o disco for de 4 GB ou maior ou 64 KB se o disco for menor que 4 GB.
[out] ppFreeExtentArray
O endereço de uma variável de ponteiro que recebe um
matriz de estruturas VDS_DISK_FREE_EXTENT , uma para cada extensão livre.
Os chamadores devem liberar essa matriz usando a função CoTaskMemFree . Se não houver extensões livres, o ponteiro será definido como NULL na saída e não precisará ser liberado.
[out] plNumberOfFreeExtents
Um ponteiro para uma variável que recebe o número total de estruturas VDS_DISK_FREE_EXTENT . Se não houver extensões livres, o ponteiro será definido como NULL na saída e não precisará ser liberado.
Retornar valor
Esse método pode retornar valores HRESULT padrão, como E_INVALIDARG ou E_OUTOFMEMORY e valores retornados específicos do VDS. Ele também pode retornar códigos de erro do sistema convertidos usando a macro HRESULT_FROM_WIN32 . Os erros podem ser originados do próprio VDS ou do provedor de VDS subjacente que está sendo usado. Os possíveis valores retornados incluem o seguinte.
Código/valor de retorno | Descrição |
---|---|
|
As informações de extensão livre foram retornadas com êxito. |
|
Não há extensões livres no disco. |
|
O valor de alinhamento especificado no parâmetro ulAlign não é um múltiplo do tamanho do setor de disco. |
Requisitos
Cliente mínimo com suporte | Windows 7 [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows Server 2008 R2 [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | vds.h |