Compartilhar via


Função SetupQuerySpaceRequiredOnDriveA (setupapi.h)

[Essa função está disponível para uso nos sistemas operacionais indicados na seção Requisitos. Ele pode estar alterado ou 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ços 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ços 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 que especifica DriveSpec.

A função SetupQuerySpaceRequiredOnDrive calcula o espaço adicional necessário na unidade de destino verificando se há 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 preexistente de 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 pela FIRST.EXE de 2000 bytes será de 3.000 bytes.

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

[in] Reserved1

Reservado; deve ser 0 (zero).

[in] Reserved2

Reservado; deve ser 0 (zero).

Valor de retorno

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á 0 (zero). 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 de do DiskSpace especificado é inválido.
ERROR_INVALID_PARAMETER
A cadeia de caracteres DriveSpec especificada é inválida.

Observações

Nota

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 do pré-processador UNICODE. A combinação do uso do alias neutro de codificação com código que não é neutro em codificação pode levar a incompatibilidades que resultam em erros de compilação ou de runtime. Para obter mais informações, consulte Conventions for Function Prototypes.

Requisitos

Requisito Valor
de cliente com suporte mínimo Windows XP [somente aplicativos da área de trabalho]
servidor com suporte mínimo Windows Server 2003 [somente aplicativos da área de trabalho]
da Plataforma de Destino Windows
cabeçalho setupapi.h
biblioteca Setupapi.lib
de DLL Setupapi.dll

Consulte também

Funções

Visão geral

SetupQueryDrivesInDiskSpaceList