Tabla de archivos
La tabla de archivos contiene una lista completa de archivos de origen con sus diversos atributos, ordenados por un identificador único, no localizado. Los archivos se pueden almacenar en el medio de origen como archivos individuales o comprimidos dentro de un archivo de gabinete. Para obtener más información, vea Uso de gabinetes y orígenes comprimidos.
La tabla de archivos tiene las columnas siguientes.
Columna | Tipo | Clave | Nullable |
---|---|---|---|
Archivo | Identificador | S | N |
Component_ | Identificador | N | N |
FileName | Nombre de archivo | N | N |
FileSize | DoubleInteger | N | N |
Versión | Versión | N | S |
Idioma | Lenguaje | N | S |
Atributos | Entero | N | S |
Secuencia | Entero | N | N |
Columnas
-
Archivo
-
Token no localizado que identifica de forma única el archivo. Este campo no distingue mayúsculas de minúsculas. No asigne identificadores a archivos diferentes que solo difieren en su caso.
-
Component_
-
Clave externa en la primera columna de la tabla de componentes. Este campo identifica el componente que controla el archivo.
-
Nombre
-
Nombre de archivo usado para la instalación. El nombre se puede localizar.
Dado que algunos servidores web pueden distinguir mayúsculas de minúsculas, FileName debe coincidir exactamente con el caso de los archivos de origen para garantizar la compatibilidad con las descargas de Internet.
-
Tamaño
-
El tamaño del archivo en bytes. Debe ser un número no negativo.
-
Versión
-
Este campo es la cadena de versión de un archivo con versiones. Este campo está en blanco para los archivos sin versiones. La versión del archivo especificada en este campo debe ser idéntica a la versión del archivo incluido con el paquete de instalación.
El campo Versión también se puede establecer para que contenga la clave principal de otro registro en la tabla Archivo. A continuación, el archivo al que se hace referencia determina la lógica de control de versiones de este archivo. Para obtener más información, vea Archivos complementarios. Tenga en cuenta que si este archivo es la ruta de acceso de la clave de su componente, no debe especificarse como un archivo complementario.
-
Lengua
-
Lista de identificadores de idioma decimal separados por comas.
Los archivos de fuente no deben crearse con un identificador de idioma, ya que las fuentes no tienen un recurso de identificador de idioma incrustado. Por lo tanto, esta columna debe dejarse null para los archivos de fuente.
-
Atributos
-
Entero que contiene marcas de bits que representan atributos de archivo.
En la tabla siguiente se muestra la definición del campo de bits.
Constante Hexadecimal Decimal Descripción msidbFileAttributesReadOnly 0x000001 1 Solo lectura msidbFileAttributesHidden 0x000002 2 Hidden msidbFileAttributesSystem 0x000004 4 Sistema msidbFileAttributesVital 0x000200 512 El archivo es fundamental para el funcionamiento preciso del componente al que pertenece. Si se produce un error en la instalación de un archivo con el atributo msidbFileAttributesVital, la instalación se detiene y se revierte. En este caso, el Instalador muestra un cuadro de diálogo sin un botón Omitir. Si no se establece este atributo y se produce un error en la instalación del archivo, el instalador muestra un cuadro de diálogo con un botón Omitir. En este caso, el usuario puede optar por omitir el error de instalación del archivo y continuar. msidbFileAttributesChecksum 0x000400 1024 El archivo contiene una suma de comprobación válida. Se requiere una suma de comprobación para reparar un archivo que se ha dañado. msidbFileAttributesPatchAdded 0x001000 4096 Este bit solo debe agregarse mediante una revisión y si el archivo está siendo agregado por la revisión. msidbFileAttributesNoncompressed 0x002000 8192 El tipo de origen del archivo está sin comprimir. Si se establece, omita la propiedad Resumen de recuento de palabras . Si no se establecen msidbFileAttributesNoncompressed o msidbFileAttributesCompressed , la propiedad Word Count Summary especifica el estado de compresión del archivo. No establezca msidbFileAttributesNoncompressed y msidbFileAttributesCompressed. msidbFileAttributesCompressed 0x004000 16384 El tipo de origen del archivo se comprime. Si se establece, omita la propiedad Resumen de recuento de palabras . Si no se establecen msidbFileAttributesNoncompressed o msidbFileAttributesCompressed , la propiedad Word Count Summary especifica el estado de compresión del archivo. No establezca msidbFileAttributesNoncompressed y msidbFileAttributesCompressed. Si se establece el bit msidbFileAttributesVital dentro de la columna Atributos y si el componente al que pertenece el archivo está seleccionado para la instalación, el instalador debe poder instalar este archivo para que la instalación se complete correctamente. Si el instalador no puede instalar el archivo por algún motivo (por ejemplo, si el archivo de origen no se encuentra dentro de la imagen de origen), aparecerá un cuadro de diálogo de error con las opciones "Reintentar" o "Cancelar". Para un archivo que no tiene establecido msidbFileAttributesVital , las opciones en caso de un error de instalación serán "Abort", "Retry" y "Ignore" (es decir, el usuario tendrá la opción de completar la instalación correctamente sin instalar ese archivo).
El bit msidbFileAttributesChecksum dentro de la columna Atributos debe establecerse para cada archivo ejecutable de la instalación que tenga una suma de comprobación válida almacenada en el encabezado de archivo portable ejecutable (PE). Solo se comprobarán los archivos que tengan este conjunto de bits para comprobar si hay una suma de comprobación válida durante una reinstalación. Para obtener más información, vea REINSTALARMODE.
-
Secuencia
-
Posición de secuencia de este archivo en las imágenes multimedia. Este orden debe corresponder al orden de los archivos en el gabinete si los archivos están comprimidos. Los enteros de este campo deben ser iguales o mayores que 1.
Los números de secuencia de la columna Secuencia se usan para especificar el orden de instalación de los archivos y el medio de origen en el que se encuentra el archivo (junto con la tabla multimedia). Por ejemplo, supongamos que un archivo tiene un número de secuencia de 92. Para determinar el disco de origen en el que reside este archivo, busque en la tabla Multimedia la entrada con el valor de Última secuencia más pequeño que sea mayor que 92.
Aunque a los archivos comprimidos se les asignan números de secuencia internos dentro de los gabinetes, esos números absolutos no necesitan coincidir con los números de secuencia dentro de la tabla File. Sin embargo, es importante que la secuencia de archivos de la tabla Archivo sea idéntica a la secuencia de los archivos dentro de los gabinetes.
En el caso de los archivos que no están comprimidos, los números de secuencia no deben ser únicos. Por ejemplo, si todos los archivos están sin comprimir y todos residen en un disco, podría proporcionar a todos los archivos el mismo número de secuencia.
El límite máximo es de 32767 archivos. Para crear un paquete de instalador de Windows con más archivos, consulte Creación de un paquete grande.
Observaciones
Las acciones InstallFiles y RemoveFiles de las tablas de secuencia procesan la información de esta tabla. Para obtener información sobre el uso de tablas de secuencia, vea Uso de una tabla de secuencia.
La tabla se genera inicialmente a partir de la lista de archivos, pero si se usa la compresión del gabinete, la tabla se vuelve a generar a partir de la salida del motor de compresión. Para obtener más información, vea Archivos de gabinete.
Para mover un archivo existente en el equipo del usuario durante la instalación, use la acción MoveFiles y la tabla MoveFiles. Para instalar un archivo en varias ubicaciones, use la acción DuplicateFiles y la tabla DuplicateFile.
En la tabla siguiente se resumen las posibles combinaciones de valores de la columna Versión y la columna Idioma. Para obtener más información, vea Reglas de control de versiones de archivos.
Versión | Idioma | Descripción |
---|---|---|
1.2.3.4 | 3082 | La versión y el idioma. |
1.2.3.4 | (Null) | Versión pero sin idioma. |
1.2.3.4 | 0 | La versión y el idioma son neutros. |
Testdb | (Null) | El archivo complementario sin idioma asociado a él. |
Testdb | 3082 | El archivo y el idioma complementarios. |
(Null) | 3082 | Ninguna versión, pero tiene asociado un idioma (es decir, typelib, helpfile). |
Para obtener más información, consulte la tabla MsiLockPermissionsEx y la tabla LockPermissions.
Validación
ICE02
ICE03
ICE04
ICE06
ICE18
ICE30
ICE32
ICE35
ICE39
ICE42
ICE45
ICE50
ICE51
ICE54
ICE55
ICE57
ICE59
ICE60
ICE67
ICE69
ICE76
ICE91