Partager via


Table de fichiers

La table de fichiers contient une liste complète des fichiers sources avec leurs différents attributs, classés par un identificateur unique, non localisé. Les fichiers peuvent être stockés sur le support source sous forme de fichiers individuels ou compressés dans un fichier d’armoire . Pour plus d’informations, consultez Utilisation d’armoires et de sources compressées.

La table de fichiers contient les colonnes suivantes.

Colonne Type Clé Nullable
Lime identificateur Y N
Composant_ identificateur N N
Fichier nom de fichier N N
FileSize DoubleInteger N N
Version version N Y
Langue langue N Y
Attributs entier N Y
Séquence entier N N

 

Colonnes

fichier

Jeton non localisé qui identifie de manière unique le fichier. Ce champ ne respecte pas la casse. N’attribuez pas d’identificateurs à différents fichiers qui diffèrent uniquement par leur cas.

Component_

Clé externe dans la première colonne de la table de composants . Ce champ identifie le composant qui contrôle le fichier.

FileName

Nom de fichier utilisé pour l’installation. Le nom peut être localisé.

Étant donné que certains serveurs web peuvent être sensibles à la casse, FileName doit correspondre exactement au cas des fichiers sources pour garantir la prise en charge des téléchargements Internet.

FileSize

Taille du fichier en octets. Il doit s’agir d’un nombre non négatif.

version

Ce champ est la chaîne de version d’un fichier avec version. Ce champ est vide pour les fichiers non versionnés. La version du fichier entrée dans ce champ doit être identique à la version du fichier inclus dans le package d’installation.

Le champ Version peut également être défini pour contenir la clé primaire d’un autre enregistrement dans la table Fichier. Le fichier référencé détermine ensuite la logique de contrôle de version pour ce fichier. Pour plus d’informations, consultez Fichiers compagnons. Notez que si ce fichier est le chemin d’accès clé de son composant, il ne doit pas être spécifié en tant que fichier complémentaire.

langue

Liste des ID de langue décimale séparés par des virgules.

Les fichiers de police ne doivent pas être créés avec un ID de langue, car les polices n’ont pas de ressource d’ID de langue incorporée. Ainsi, cette colonne doit être laissée null pour les fichiers de police.

attributs

Entier qui contient des indicateurs de bits qui représentent des attributs de fichier.

Le tableau suivant montre la définition du champ bit.

Constant Hexadécimal Décimal Description
msidbFileAttributesReadOnly 0x000001 1 Read-Only
msidbFileAttributesHidden 0x000002 2 Caché
msidbFileAttributesSystem 0x000004 4 Système
msidbFileAttributesVital 0x000200 512 Le fichier est essentiel pour l’opération précise du composant auquel il appartient. Si l’installation d’un fichier avec l’attribut msidbFileAttributesVital échoue, l’installation s’arrête et est restaurée. Dans ce cas, le programme d’installation affiche une boîte de dialogue sans bouton Ignorer. Si cet attribut n’est pas défini et que l’installation du fichier échoue, le programme d’installation affiche une boîte de dialogue avec un bouton Ignorer. Dans ce cas, l’utilisateur peut choisir d’ignorer l’échec de l’installation du fichier et de continuer.
msidbFileAttributesChecksum 0x000400 1024 Le fichier contient une somme de contrôle valide. Une somme de contrôle est nécessaire pour réparer un fichier endommagé.
msidbFileAttributesPatchAdded 0x001000 4096 Ce bit doit uniquement être ajouté par un correctif et si le fichier est ajouté par le correctif.
msidbFileAttributesNoncompressed 0x002000 8192 Le type source du fichier n’est pas compressé. Si elle est définie, ignorez la Word Count Summary Property. Si aucun msidbFileAttributesNoncompressed ou msidbFileAttributesCompressed sont définis, l’état de compression du fichier est spécifié par la Word Count Summary Property. Ne définissez pas les deux msidbFileAttributesNoncompressed et msidbFileAttributesCompressed.
msidbFileAttributesCompressed 0x004000 16384 Le type source du fichier est compressé. Si elle est définie, ignorez la Word Count Summary Property. Si aucun msidbFileAttributesNoncompressed ou msidbFileAttributesCompressed sont définis, l’état de compression du fichier est spécifié par la Word Count Summary Property. Ne définissez pas les deux msidbFileAttributesNoncompressed et msidbFileAttributesCompressed.

 

Si le msidbFileAttributesVital bit dans la colonne Attributs est défini et si le composant auquel appartient le fichier est sélectionné pour l’installation, le programme d’installation doit être en mesure d’installer ce fichier pour que l’installation soit terminée. Si le programme d’installation ne parvient pas à installer le fichier pour une raison quelconque (par exemple, si le fichier source ne peut pas se trouver dans l’image source), une boîte de dialogue d’erreur s’affiche avec les options « Réessayer » ou « Annuler ». Pour un fichier qui n’a pas msidbFileAttributesVital défini, les options en cas d’erreur d’installation sont « Abort », « Retry » et « Ignore » (autrement dit, l’utilisateur aura la possibilité de terminer l’installation correctement sans installer ce fichier).

Le msidbFileAttributesChecksum bit dans la colonne Attributs doit être défini pour chaque fichier exécutable de l’installation qui a unesomme de contrôlevalide stockée dans l’en-tête de fichier Exécutable portable (PE). Seuls les fichiers qui ont ce jeu de bits seront jamais vérifiés pour la somme de contrôle valide lors d’une réinstallation. Pour plus d’informations, consultez leRÉINSTALLERMODE.

séquence de

Position de séquence de ce fichier sur les images multimédias. Cet ordre doit correspondre à l’ordre des fichiers dans l’armoire si les fichiers sont compressés. Les entiers de ce champ doivent être égaux ou supérieurs à 1.

Les numéros de séquence dans la colonne Séquence sont utilisés pour spécifier à la fois l’ordre d’installation des fichiers et le support source sur lequel se trouve le fichier (conjointement avec la table multimédia ). Par exemple, supposons qu’un fichier a un numéro de séquence de 92. Pour déterminer le disque source sur lequel réside ce fichier, recherchez dans la table Media l’entrée avec la plus petite valeur de dernière séquence supérieure à 92.

Bien que les fichiers compressés soient affectés à des numéros de séquence internes dans les armoires, ces nombres absolus n’ont pas besoin de correspondre aux numéros de séquence dans la table Fichier. Toutefois, il est important que la séquence de fichiers de la table Fichier soit identique à la séquence des fichiers dans les armoires.

Pour les fichiers qui ne sont pas compressés, les numéros de séquence ne doivent pas être uniques. Par exemple, si tous vos fichiers ne sont pas compressés et que tous résident sur un seul disque, vous pouvez donner à tous les fichiers le même numéro de séquence.

La limite maximale est de 32767 fichiers. Pour créer un package Windows Installer avec plus de fichiers, consultez Création d’un package volumineux.

Remarques

Les actions InstallFiles et RemoveFiles dans les tables de séquences traiter les informations de cette table. Pour plus d’informations sur l’utilisation de tables de séquences , consultez Utilisation d’une table de séquences.

La table est initialement générée à partir de la liste de fichiers, mais si la compression de l’armoire est utilisée, la table est régénérée à partir de la sortie du moteur de compression. Pour plus d’informations, consultez Fichiers cabinet.

Pour déplacer un fichier existant sur l’ordinateur de l’utilisateur pendant l’installation, utilisez l'd’action MoveFiles et MoveFile Table. Pour installer un fichier à plusieurs emplacements, utilisez l’action DuplicateFiles et le duplicateFile Table.

Le tableau suivant récapitule les combinaisons possibles de valeurs dans la colonne Version et la colonne Langue. Pour plus d’informations, consultez règles de contrôle de version de fichiers.

Version Langue Description
1.2.3.4 1033 Version et langue.
1.2.3.4 (Null) Version mais aucune langue.
1.2.3.4 0 La version et la langue sont neutres.
Testdb (Null) Fichier complémentaire sans langue associée.
Testdb 1033 Fichier complémentaire et langue.
(Null) 1033 Aucune version, mais elle a une langue associée (c’est-à-dire, typelib, helpfile).

 

Pour plus d’informations, consultez de table MsiLockPermissionsEx et table LockPermissions.

Validation

ICE02
ICE03
ICE04
ICE06
ICE18
ICE30
ICE32
ICE35
ICE39
ICE42
ICE45
ICE50
ICE51
ICE54
ICE55
ICE57
ICE59
ICE60
ICE67
ICE69
ICE76
ICE91