Compartilhar via


Função SetupQuerySpaceRequiredOnDriveA (setupapi.h)

[Essa função está disponível para uso nos sistemas operacionais indicados na seção Requisitos. Ele poderá ser alterado ou ficar indisponível em versões subsequentes. SetupAPI não deve mais ser usado para instalar aplicativos. Em vez disso, use o Windows Installer para desenvolver instaladores de aplicativos. SetupAPI continua a ser usado para instalar drivers de dispositivo.]

A função SetupQuerySpaceRequiredOnDrive examina uma lista de espaço em disco para determinar o espaço necessário para executar todas as operações de arquivo listadas para uma unidade específica.

Sintaxe

WINSETUPAPI BOOL SetupQuerySpaceRequiredOnDriveA(
  [in]  HDSKSPC  DiskSpace,
  [in]  PCSTR    DriveSpec,
  [out] LONGLONG *SpaceRequired,
  [in]  PVOID    Reserved1,
  [in]  UINT     Reserved2
);

Parâmetros

[in] DiskSpace

O identificador para uma lista de espaço em disco.

[in] DriveSpec

Um ponteiro para uma cadeia de caracteres terminada em nulo que especifica a unidade em que as informações de espaço devem ser retornadas.

Isso deve estar no formato "x:" ou "\server\share".

[out] SpaceRequired

Se a função for bem-sucedida, esse parâmetro receberá a quantidade de espaço adicional necessária para processar todas as operações de arquivo listadas na lista de espaço em disco para a unidade especificada pelo DriveSpec .

A função SetupQuerySpaceRequiredOnDrive calcula o espaço adicional necessário na unidade de destino verificando versões pré-existentes dos arquivos na unidade de destino.

Por exemplo, se uma operação de arquivo copiar um arquivo de 2.000 bytes, FIRST.EXE, para o diretório C:\MYPROG, a função SetupQuerySpaceRequiredOnDrive verificará automaticamente uma versão pré-existente desse arquivo nesse diretório. Se uma versão pré-existente do C:\MYPROG\FIRST.EXE tiver um tamanho de arquivo de 500 bytes, o espaço adicional necessário na unidade C para essa operação será de 1500 bytes.

O valor recebido pode ser 0 (zero) ou um número negativo, se espaço adicional não for necessário ou se o espaço for liberado na unidade de destino.

Se FIRST.EXE no exemplo anterior estiver sendo excluído da unidade C, a quantidade de espaço necessária será de 2.000 bytes ou o espaço liberado na unidade C.

Se a versão pré-existente tiver um tamanho de arquivo de 5.000 bytes, o espaço em disco necessário para substituí-la pelo FIRST.EXE de 2000 bytes será de 3.000 bytes.

Os tamanhos de arquivo são arredondados para os limites do cluster de disco.

[in] Reserved1

Reservados; deve ser 0 (zero).

[in] Reserved2

Reservados; deve ser 0 (zero).

Retornar valor

Se a função for bem-sucedida, o valor retornado será um valor diferente de zero e SpaceRequired receberá a quantidade de espaço exigida pelas operações de arquivo listadas na lista de espaços em disco atual.

Se a função falhar, o valor retornado será zero (0). Para obter informações de erro estendidas, chame GetLastError.

Código de retorno Descrição
ERROR_INVALID_DRIVE
A unidade especificada não está na lista de espaço em disco.
ERROR_INVALID_HANDLE
O identificador do DiskSpace especificado é inválido.
ERROR_INVALID_PARAMETER
A cadeia de caracteres DriveSpec especificada é inválida.

Comentários

Observação

O cabeçalho setupapi.h define SetupQuerySpaceRequiredOnDrive como um alias que seleciona automaticamente a versão ANSI ou Unicode dessa função com base na definição da constante de pré-processador UNICODE. Misturar o uso do alias neutro de codificação com código que não seja neutro em codificação pode levar a incompatibilidades que resultam em erros de compilação ou de runtime. Para obter mais informações, consulte Convenções para protótipos de função.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows XP [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2003 [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho setupapi.h
Biblioteca Setupapi.lib
DLL Setupapi.dll

Confira também

Funções

Visão geral

SetupQueryDrivesInDiskSpaceList