Partager via


SetupQuerySpaceRequiredOnDriveA, fonction (setupapi.h)

[Cette fonction est disponible pour une utilisation dans les systèmes d’exploitation indiqués dans la section Configuration requise. Il peut être modifié ou indisponible dans les versions ultérieures. SetupAPI ne doit plus être utilisé pour installer des applications. Utilisez plutôt Windows Installer pour développer des programmes d’installation d’applications. SetupAPI continue d’être utilisé pour installer des pilotes de périphérique.]

La fonction SetupQuerySpaceRequiredOnDrive examine une liste d’espaces disque pour déterminer l’espace nécessaire pour effectuer toutes les opérations de fichier répertoriées pour un lecteur spécifique.

Syntaxe

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

Paramètres

[in] DiskSpace

Handle vers une liste d’espace disque.

[in] DriveSpec

Pointeur vers une chaîne terminée par null qui spécifie le lecteur où les informations d’espace doivent être retournées.

Il doit s’agir de la forme « x : » ou « \server\share ».

[out] SpaceRequired

Si la fonction réussit, ce paramètre reçoit la quantité d’espace supplémentaire nécessaire pour traiter toutes les opérations de fichier répertoriées dans la liste d’espace disque du lecteur spécifié DriveSpec.

La fonction SetupQuerySpaceRequiredOnDrive calcule l’espace supplémentaire requis sur le lecteur cible en vérifiant les versions préexistantes des fichiers sur le lecteur cible.

Par exemple, si une opération de fichier copie un fichier de 2000 octets, FIRST.EXE, dans le répertoire C :\MYPROG, la fonction SetupQuerySpaceRequiredOnDrive vérifie automatiquement une version préexistante de ce fichier dans ce répertoire. Si une version préexistante de C :\MYPROG\FIRST.EXE a une taille de fichier de 500 octets, l’espace supplémentaire requis sur le lecteur C pour cette opération est de 1500 octets.

La valeur reçue peut être 0 (zéro) ou un nombre négatif, si un espace supplémentaire n’est pas requis, ou si l’espace est libéré sur le lecteur cible.

Si FIRST.EXE dans l’exemple précédent est supprimé du lecteur C, la quantité d’espace nécessaire est de 2 000 octets ou l’espace libéré sur le lecteur C.

Si la version préexistante a une taille de fichier de 5 000 octets, l’espace disque requis pour le remplacer par le FIRST.EXE de 2000 octets est de 3 000 octets.

Les tailles de fichier sont arrondies aux limites du cluster de disque.

[in] Reserved1

Réservé; doit être égal à 0 (zéro).

[in] Reserved2

Réservé; doit être égal à 0 (zéro).

Valeur de retour

Si la fonction réussit, la valeur de retour est une valeur différente de zéro et SpaceRequired reçoit la quantité d’espace requis par les opérations de fichier répertoriées dans la liste d’espaces disque actuel.

Si la fonction échoue, la valeur de retour est 0 (zéro). Pour obtenir des informations d’erreur étendues, appelez GetLastError.

Retourner le code Description
ERROR_INVALID_DRIVE
Le lecteur spécifié ne figure pas dans la liste d’espace disque.
ERROR_INVALID_HANDLE
Le handle DiskSpace spécifié n’est pas valide.
ERROR_INVALID_PARAMETER
La chaîne DriveSpec spécifiée n’est pas valide.

Remarques

Note

L’en-tête setupapi.h définit SetupQuerySpaceRequiredOnDrive comme alias qui sélectionne automatiquement la version ANSI ou Unicode de cette fonction en fonction de la définition de la constante de préprocesseur UNICODE. Le mélange de l’utilisation de l’alias neutre en encodage avec du code qui n’est pas neutre en encodage peut entraîner des incompatibilités qui entraînent des erreurs de compilation ou d’exécution. Pour plus d’informations, consultez Conventions pour les prototypes de fonction.

Exigences

Exigence Valeur
client minimum pris en charge Windows XP [applications de bureau uniquement]
serveur minimum pris en charge Windows Server 2003 [applications de bureau uniquement]
plateforme cible Windows
d’en-tête setupapi.h
bibliothèque Setupapi.lib
DLL Setupapi.dll

Voir aussi

Functions

Vue d’ensemble

SetupQueryDrivesInDiskSpaceList