Table de fichier

La table file contient la liste complète des fichiers sources avec leurs différents attributs, classés par un identificateur unique et non localisé. Les fichiers peuvent être stockés sur le support source en tant que fichiers individuels ou compressés dans un fichier CAB. 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
Fichier Identificateur O N
Composant_ Identificateur N N
FileName Nom du fichier N N
FileSize DoubleInteger N N
Version Version N O
Langage Langage N O
Attributs Integer N O
Séquence Integer N N

Colonnes

Txt

Jeton non localisé qui identifie de façon unique le fichier. Ce champ n’est pas sensible à la casse. N’assignez pas d’identificateurs à des fichiers différents qui diffèrent uniquement par leur casse.

-_

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

Extension

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

Étant donné que certains serveurs Web peuvent respecter la casse, le nom de fichier doit correspondre exactement à la casse des fichiers sources pour garantir la prise en charge des téléchargements Internet.

Taille

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

Version

Ce champ correspond à la chaîne de version d’un fichier avec version. Ce champ est vide pour les fichiers sans version. La version de 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 de fichiers. Le fichier référencé détermine ensuite la logique de contrôle de version pour ce fichier. Pour plus d’informations, consultez fichiers d’accompagnement. Notez que si ce fichier est le chemin d’accès de clé de son composant, il ne doit pas être spécifié en tant que fichier compagnon.

Sous

Liste d’ID de langue décimaux séparés par des virgules.

Les fichiers de polices 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. Par conséquent, cette colonne doit être laissée null pour les fichiers de polices.

Attributs

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

Le tableau suivant montre la définition du champ de bits.

Constante Valeur hexadécimale Decimal Description
msidbFileAttributesReadOnly 0x000001 1 Lecture seule
msidbFileAttributesHidden 0x000002 2 Hidden
msidbFileAttributesSystem 0x000004 4 Système
msidbFileAttributesVital 0x000200 512 Le fichier est essentiel pour le fonctionnement précis du composant auquel il appartient. Si l’installation d’un fichier avec l’attribut msidbFileAttributesVital échoue, l’installation s’arrête et est annulé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 d’installation du fichier et de continuer.
msidbFileAttributesChecksum 0x000400 1 024 Le fichier contient une somme de contrôlevalide. Une somme de contrôle est nécessaire pour réparer un fichier qui a été endommagé.
msidbFileAttributesPatchAdded 0x001000 4096 Ce bit doit être ajouté uniquement par un correctif et si le fichier est ajouté par le correctif.
msidbFileAttributesNoncompressed 0x002000 8 192 Le type de source du fichier n’est pas compressé. Si cette option est définie, ignore la propriété Résumé du nombre de mots . Si ni msidbFileAttributesNoncompressed ni msidbFileAttributesCompressed n’est défini, l’état de compression du fichier est spécifié par la propriété Résumé du nombre de mots . Ne définissez pas à la fois msidbFileAttributesNoncompressed et msidbFileAttributesCompressed.
msidbFileAttributesCompressed 0x004000 16384 Le type de source du fichier est compressé. Si cette option est définie, ignore la propriété Résumé du nombre de mots . Si ni msidbFileAttributesNoncompressed ni msidbFileAttributesCompressed n’est défini, l’état de compression du fichier est spécifié par la propriété Résumé du nombre de mots . Ne définissez pas à la fois msidbFileAttributesNoncompressed et msidbFileAttributesCompressed.

Si le bit msidbFileAttributesVital 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 effectuée correctement. Si le programme d’installation ne parvient pas à installer le fichier pour une raison quelconque (par exemple, si le fichier source est introuvable dans l’image source), une boîte de dialogue d’erreur s’affiche avec les options « réessayer » ou « annuler ». Dans le cas d’un fichier pour lequel msidbFileAttributesVital n’est pas défini, les options en cas d’erreur d’installation sont « abandonner », « Réessayer » et « ignorer » (autrement dit, l’utilisateur a la possibilité d’effectuer correctement l’installation sans installer ce fichier).

Le bit msidbFileAttributesChecksum dans la colonne attributs doit être défini pour chaque fichier exécutable de l’installation dont la somme de contrôle valide est stockée dans l’en-tête de fichier exécutable portable (PE). Seuls les fichiers qui ont cet ensemble de bits sont vérifiés pour une somme de contrôle valide pendant une réinstallation. Pour plus d’informations, consultez REINSTALLMODE.

Séquence

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

Les numéros de séquence de la colonne séquence sont utilisés pour spécifier l’ordre d’installation des fichiers et le support source sur lequel le fichier se trouve (conjointement avec la table des médias). Supposons, par exemple, 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 des supports l’entrée dont la dernière valeur de séquence est supérieure à 92.

Bien que les numéros de séquence internes soient affectés aux fichiers compressés dans les armoires, ces derniers ne doivent pas nécessairement correspondre aux numéros de séquence de la table de fichiers. Toutefois, il est important que la séquence de fichiers de la table de fichiers soit identique à celle des fichiers dans les armoires.

Pour les fichiers qui ne sont pas compressés, les numéros de séquence n’ont pas besoin d’être uniques. Par exemple, si tous vos fichiers sont décompressés et que tous les fichiers résident sur un disque, vous pouvez attribuer à 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 d’autres fichiers, consultez création d’un package volumineux.

Notes

Les actions InstallFiles et RemoveFiles dans les tables de séquence traitent les informations de cette table. Pour plus d’informations sur l’utilisation des 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 cab 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 CAB.

Pour déplacer un fichier existant sur l’ordinateur de l’utilisateur pendant l’installation, utilisez l' action MoveFiles et la table MoveFile. Pour installer un fichier dans plusieurs emplacements, utilisez l' action DuplicateFiles et la table DuplicateFile.

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

Version Langage Description
1.2.3.4 1033 Version et langue.
1.2.3.4 Nul La version, mais pas de langue.
1.2.3.4 0 La version et la langue sont neutres.
TestDB Nul Fichier compagnon sans langage associé.
TestDB 1033 Le fichier et la langue de l’Assistant.
Nul 1033 Aucune version, mais un langage lui est associé (c’est-à-dire TypeLib, HelpFile).

Pour plus d’informations, consultez la table MsiLockPermissionsEx et la 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