Partager via


SetupInstallFilesFromInfSectionW, 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 SetupInstallFilesFromInfSection met en file d’attente tous les fichiers d’une installation spécifiés dans les sections Copier des fichiers, supprimer des fichiers et renommer des fichiers répertoriés par une section Installation.

Si un fichier est modifié, l’appelant de cette fonction doit disposer de privilèges d’écriture dans le répertoire cible.

Syntaxe

WINSETUPAPI BOOL SetupInstallFilesFromInfSectionW(
  [in] HINF     InfHandle,
  [in] HINF     LayoutInfHandle,
  [in] HSPFILEQ FileQueue,
  [in] PCWSTR   SectionName,
  [in] PCWSTR   SourceRootPath,
  [in] UINT     CopyFlags
);

Paramètres

[in] InfHandle

Handle d’un fichier INF qui contient la section à installer.

[in] LayoutInfHandle

Pointeur facultatif vers un handle vers le fichier INF qui contient les sections SourceDisksFiles et SourceDisksNames.

Si LayoutInfHandle n’est pas spécifié, les sections SourceDisksFiles et SourceDisksNames de InfHandle sont utilisées.

[in] FileQueue

Handle vers la file d’attente où les opérations d’installation doivent être ajoutées.

[in] SectionName

Nom de la section Installer dans le paramètre InfHandle qui répertorie les sections Copier des fichiers, supprimer des fichiers et renommer des fichiers qui contiennent les fichiers à installer.

Utilisez une chaîne null-terminated.

[in] SourceRootPath

Pointeur facultatif vers un chemin racine vers les fichiers sources à copier, par exemple A :\ ou \pegasus\win\install.

Utilisez une chaîne null-terminated.

[in] CopyFlags

Pointeur facultatif vers un ensemble d’indicateurs qui contrôlent le comportement de l’opération de copie de fichier.

Les indicateurs peuvent être une combinaison des valeurs suivantes.

SP_COPY_DELETESOURCE

Supprime le fichier source lorsque la tâche de copie réussit.

L’appelant n’est pas averti en cas d’échec d’une tâche de suppression.

SP_COPY_REPLACEONLY

Copie un fichier uniquement pour remplacer un fichier au niveau du chemin d’accès de destination.

SP_COPY_NEWER_OR_SAME

Examine chaque fichier copié pour déterminer si les ressources de version indiquent qu’il s’agit de la même version, ou pas plus récente qu’une copie existante sur la cible.

Si le fichier source n’est pas une version plus récente ou égale, la fonction avertit l’appelant qui peut annuler la copie.

Les informations de version de fichier utilisées pendant les vérifications de version sont spécifiées dans les dwFileVersionMS et membres dwFileVersionLS d’une structure VS_FIXEDFILEINFO, comme indiqué par les fonctions de version Win32.

Si l’un des fichiers n’a pas de ressources de version ou s’ils ont des informations de version identiques, le fichier source est considéré comme plus récent.

SP_COPY_NEWER_ONLY

Examine chaque fichier copié pour déterminer si ses ressources de version indiquent qu’elle n’est pas plus récente qu’une copie existante sur la cible.

Si le fichier source est plus récent, mais pas égal à la version de la cible existante, le fichier est copié.

SP_COPY_NOOVERWRITE

Vérifie si le fichier cible existe ou non.

Si le fichier cible existe, la fonction avertit l’appelant qui peut annuler la copie.

SP_COPY_NODECOMP

Ne décompresse pas un fichier.

Lorsque cet indicateur est défini, le fichier cible n’a pas la forme non compressée du nom source, par exemple, si vous copiez f :\x86\cmd.ex_ dans \install\temp, le résultat est le fichier cible suivant : \install\temp\cmd.ex_.

Si l’indicateur SP_COPY_NODECOMP n’est pas spécifié, le fichier est décompressé et la cible est appelée \install\temp\cmd.exe.

La partie nom de fichier de DestinationName, le cas échéant, est supprimée et remplacée par le nom de fichier source. Lorsque SP_COPY_NODECOMP est spécifié, les informations de langue et de version ne peuvent pas être vérifiées.

SP_COPY_LANGUAGEAWARE

Examine chaque fichier en cours de copie pour déterminer si la langue est différente ou non de la langue d’un fichier existant déjà sur la cible.

Si la langue est différente, la fonction avertit l’appelant qui peut annuler la tâche de copie.

SP_COPY_SOURCE_ABSOLUTE

SourceFile est un chemin source complet.

Ne recherchez pas dans la section SourceDisksNames du fichier INF.

SP_COPY_SOURCEPATH_ABSOLUTE

SourcePathRoot est la partie complète du chemin d’accès du fichier source.

Ignorez la source relative spécifiée dans la section SourceDisksNames du fichier INF pour le média source où se trouve le fichier. Cet indicateur est ignoré si SP_COPY_SOURCE_ABSOLUTE est spécifié.

SP_COPY_FORCE_IN_USE

Met en file d’attente le fichier à copier lors du prochain redémarrage du système, si la cible existe et est utilisée.

SP_COPY_IN_USE_NEEDS_REBOOT

Avertit l’utilisateur que le système doit être redémarré, si le fichier est utilisé pendant une opération de copie.

SP_COPY_NOSKIP

Ne donne pas à l’utilisateur la possibilité d’ignorer un fichier.

SP_COPY_FORCE_NOOVERWRITE

Vérifie si le fichier cible existe ou non et si la cible existe, le fichier n’est pas remplacé et l’appelant n’est pas averti.

SP_COPY_FORCE_NEWER

Examine chaque fichier copié pour identifier que ses ressources de version (ou horodatages pour les fichiers non-image) indiquent qu’il n’est pas plus récent qu’une copie existante sur la cible.

Si le fichier copié n’est pas plus récent, le fichier n’est pas copié et l’appelant n’est pas averti.

SP_COPY_WARNIFSKIP

Avertit que l’ignorer d’un fichier peut affecter une installation si l’utilisateur tente d’ignorer un fichier.

Utilisez cet indicateur pour les fichiers critiques système.

Valeur de retour

Si la fonction réussit, la valeur de retour est une valeur différente de zéro.

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

Remarques

SetupInstallFilesFromInfSection peut être appelée plusieurs fois pour mettre en file d’attente les fichiers spécifiés dans plusieurs sections INF. Une fois la file d’attente validée avec succès et que les fichiers sont copiés, renommés et/ou supprimés, SetupInstallFromInfSection peuvent être appelés pour effectuer des opérations d’installation de Registre et d’INI.

Si un répertoire UNC est spécifié comme répertoire cible d’une installation de fichier, vous devez vous assurer que le répertoire UNC existe avant d’appeler SetupInstallFilesFromInfSection. Les fonctions d’installation ne vérifient pas l’existence des répertoires et ne créent pas de répertoires UNC. Si le répertoire UNC cible n’existe pas, l’installation du fichier échoue.

Note

L’en-tête setupapi.h définit SetupInstallFilesFromInfSection 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

SetupInstallFromInfSection

SetupInstallServicesFromInfSection