Compartir a través de


Función SetupQuerySpaceRequiredOnDriveA (setupapi.h)

[Esta función está disponible para su uso en los sistemas operativos indicados en la sección Requisitos. Puede modificarse o no estar disponible en versiones posteriores. SetupAPI ya no debe usarse para instalar aplicaciones. En su lugar, use Windows Installer para desarrollar instaladores de aplicaciones. SetupAPI sigue usándose para instalar controladores de dispositivo.]

La función SetupQuerySpaceRequiredOnDrive examina una lista de espacio en disco para determinar el espacio necesario para realizar todas las operaciones de archivo enumeradas para una unidad específica.

Sintaxis

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

Parámetros

[in] DiskSpace

Identificador de una lista de espacio en disco.

[in] DriveSpec

Puntero a una cadena terminada en null que especifica la unidad donde se va a devolver información de espacio.

Debe tener el formato "x:" o "\server\share".

[out] SpaceRequired

Si la función se ejecuta correctamente, este parámetro recibe la cantidad de espacio adicional necesario para procesar todas las operaciones de archivo enumeradas en la lista de espacio en disco de la unidad que DriveSpec especifica.

La función SetupQuerySpaceRequiredOnDrive calcula el espacio adicional necesario en la unidad de destino comprobando si hay versiones preexistentes de los archivos en la unidad de destino.

Por ejemplo, si una operación de archivo copia un archivo de 2000 bytes, FIRST.EXE, en el directorio C:\MYPROG, la función SetupQuerySpaceRequiredOnDrive comprueba automáticamente una versión preexistente de ese archivo en ese directorio. Si una versión preexistente de C:\MYPROG\FIRST.EXE tiene un tamaño de archivo de 500 bytes, el espacio adicional necesario en la unidad C para esa operación es de 1500 bytes.

El valor recibido puede ser 0 (cero) o un número negativo, si no se requiere espacio adicional o si se libera espacio en la unidad de destino.

Si FIRST.EXE en el ejemplo anterior se elimina de la unidad C, la cantidad de espacio necesario es de 2000 bytes o el espacio libre en la unidad C.

Si la versión preexistente tiene un tamaño de archivo de 5000 bytes, el espacio en disco necesario para reemplazarlo por el FIRST.EXE de 2000 bytes es de 3000 bytes.

Los tamaños de archivo se redondean a los límites del clúster de disco.

[in] Reserved1

Reservado; debe ser 0 (cero).

[in] Reserved2

Reservado; debe ser 0 (cero).

Valor devuelto

Si la función se ejecuta correctamente, el valor devuelto es un valor distinto de cero y SpaceRequired recibe la cantidad de espacio necesario para las operaciones de archivo enumeradas en la lista de espacio en disco actual.

Si se produce un error en la función, el valor devuelto es 0 (cero). Para obtener información de error extendida, llame a GetLastError.

Código devuelto Descripción
ERROR_INVALID_DRIVE
La unidad especificada no está en la lista de espacio en disco.
ERROR_INVALID_HANDLE
El identificador de DiskSpace especificado no es válido.
ERROR_INVALID_PARAMETER
La cadena DriveSpec especificada no es válida.

Observaciones

Nota

El encabezado setupapi.h define SetupQuerySpaceRequiredOnDrive como alias que selecciona automáticamente la versión ANSI o Unicode de esta función en función de la definición de la constante de preprocesador UNICODE. La combinación del uso del alias neutral de codificación con código que no es neutral de codificación puede dar lugar a errores de coincidencia que dan lugar a errores de compilación o tiempo de ejecución. Para obtener más información, vea Conventions for Function Prototypes.

Requisitos

Requisito Valor
cliente mínimo admitido Windows XP [solo aplicaciones de escritorio]
servidor mínimo admitido Windows Server 2003 [solo aplicaciones de escritorio]
de la plataforma de destino de Windows
encabezado de setupapi.h
biblioteca de Setupapi.lib
DLL de Setupapi.dll

Consulte también

funciones de

información general

setupQueryDrivesInDiskSpaceList