Funzione SetupQuerySpaceRequiredOnDriveA (setupapi.h)

[Questa funzione è disponibile per l'uso nei sistemi operativi indicati nella sezione Requisiti. È possibile che in versioni successive sia stata modificata o non sia più disponibile. SetupAPI non deve più essere usato per l'installazione di applicazioni. Usare invece Windows Installer per lo sviluppo di programmi di installazione di applicazioni. SetupAPI continua a essere usato per l'installazione dei driver di dispositivo.

La funzione SetupQuerySpaceRequiredOnDrive esamina un elenco di spazio su disco per determinare lo spazio necessario per eseguire tutte le operazioni di file elencate per un'unità specifica.

Sintassi

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

Parametri

[in] DiskSpace

Handle in un elenco di spazio su disco.

[in] DriveSpec

Puntatore a una stringa con terminazione null che specifica l'unità in cui devono essere restituite le informazioni sullo spazio.

Deve essere nel formato "x:" o "\server\share".

[out] SpaceRequired

Se la funzione ha esito positivo, questo parametro riceve la quantità di spazio aggiuntivo necessario per elaborare tutte le operazioni di file elencate nell'elenco spazio su disco per l'unità specificata da DriveSpec .

La funzione SetupQuerySpaceRequiredOnDrive calcola lo spazio aggiuntivo richiesto nell'unità di destinazione controllando le versioni preesistenti dei file nell'unità di destinazione.

Ad esempio, se un'operazione di file copia un file a 2000 byte, FIRST.EXE, nella directory, C:\MYPROG, la funzione SetupQuerySpaceRequiredOnDrive controlla automaticamente una versione preesistente di tale file in tale directory. Se una versione preesistente di C:\MYPROG\FIRST.EXE ha una dimensione di file di 500 byte, lo spazio aggiuntivo richiesto nell'unità C per tale operazione è di 1500 byte.

Il valore ricevuto può essere 0 (zero) o un numero negativo, se lo spazio aggiuntivo non è necessario o se lo spazio viene liberato nell'unità di destinazione.

Se FIRST.EXE nell'esempio precedente viene eliminato dall'unità C, la quantità di spazio necessaria è 2000 byte o lo spazio liberato nell'unità C.

Se la versione preesistente ha una dimensione del file pari a 5000 byte, lo spazio su disco necessario per sostituirlo con il FIRST.EXE di 2000 byte è di 3000 byte.

Le dimensioni dei file vengono arrotondate ai limiti del cluster su disco.

[in] Reserved1

Riservati; deve essere 0 (zero).

[in] Reserved2

Riservati; deve essere 0 (zero).

Valore restituito

Se la funzione ha esito positivo, il valore restituito è un valore diverso da zero e SpaceRequired riceve la quantità di spazio necessaria dalle operazioni file elencate nell'elenco di spazio su disco corrente.

Se la funzione ha esito negativo, il valore restituito è 0 (zero). Per informazioni dettagliate sull'errore, chiamare GetLastError.

Codice restituito Descrizione
ERROR_INVALID_DRIVE
L'unità specificata non è nell'elenco spazio su disco.
ERROR_INVALID_HANDLE
L'handle DiskSpace specificato non è valido.
ERROR_INVALID_PARAMETER
La stringa DriveSpec specificata non è valida.

Commenti

Nota

L'intestazione setupapi.h definisce SetupQuerySpaceRequiredOnDrive come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante preprocessore UNICODE. La combinazione dell'utilizzo dell'alias di codifica neutrale con il codice che non è neutrale dalla codifica può causare errori di corrispondenza che causano errori di compilazione o runtime. Per altre informazioni, vedere Convenzioni per i prototipi di funzione.

Requisiti

Requisito Valore
Client minimo supportato Windows XP [solo app desktop]
Server minimo supportato Windows Server 2003 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione setupapi.h
Libreria Setupapi.lib
DLL Setupapi.dll

Vedi anche

Funzioni

Panoramica

SetupQueryDrivesInDiskSpaceList