Extraction de fichiers à partir d’armoires

Vous pouvez extraire des fichiers d’un fichier CAB de deux manières. La méthode la plus simple et la plus simple consiste à tirer parti du traitement automatique des fichiers CAB intégré aux fonctions d’installation.

Les fonctions d’installation, telles que SetupCommitFileQueue, SetupInstallFileet SetupInstallFromInfSection, vérifient la compression sur chaque fichier. Si le fichier se trouve dans un fichier CAB, les fonctions recherchent d’abord un fichier de ce nom en dehors de l’armoire. S’il est trouvé, les fonctions installent le fichier externe, en ignorant le fichier à l’intérieur du fichier CAB. Cela vous permet de mettre à jour un seul fichier à l’intérieur du cabinet sans recréer le fichier CAB.

Les fonctions d’installation suivent également les fichiers d’un fichier CAB qui ont été récupérés, de sorte qu’un fichier n’est extrait qu’une seule fois, même s’il est installé plusieurs fois.

La deuxième méthode pour extraire des fichiers d’un fichier CAB consiste à utiliser SetupIterateCabinet. Cette fonction itère au sein de chaque fichier d’un fichier CAB, en envoyant une notification à une routine de rappel pour chaque fichier trouvé. La routine de rappel retourne ensuite une valeur qui indique si le fichier doit être extrait ou ignoré.

Notes

L’API d’installation ne fournit pas de routine de rappel par défaut pour gérer les notifications de fichier CAB. Si vous appelez SetupIterateCabinet de manière explicite, vous devez fournir une routine de rappel pour traiter les notifications d’armoire retournées par la fonction.