Control de páginas de códigos de tablas importadas y exportadas

Puede agregar información de localización a una base de datos de instalación mediante la importación y exportación de archivos de almacenamiento de texto ASCII con MsiDatabaseExport y MsiDatabaseImport. Dado que el grupo de cadenas de base de datos usa una página de códigos ANSI, tanto la base de datos como los archivos de almacenamiento de texto exportados tienen páginas de códigos.

Cuando se exporta un archivo de almacenamiento de texto desde una base de datos, la página de códigos del archivo de almacenamiento es la misma que la de la base de datos primaria. Para obtener una lista de las páginas de códigos numéricas, consulte Localización de las tablas Error y ActionText.

Nota:

La exportación de una tabla a un archivo de almacenamiento de texto traduce los caracteres de control para evitar conflictos con delimitadores de archivo.

 

Archivos de almacenamiento de texto ASCII

Los archivos de almacenamiento de texto ASCII exportados por MsiDatabaseExport se explican en el formato siguiente:

  • Los nombres de las columnas de tabla se escriben en la primera línea.
  • Los formatos de columna se escriben en la segunda línea.
  • Si la tabla solo contiene datos ASCII, la tercera línea del archivo de texto es el nombre de tabla seguido de una lista de las claves principales.
  • Si la tabla contiene datos que no son ASCII y la base de datos está marcada con una página de códigos numérica, el número de página de códigos aparece al principio de la tercera línea.
  • Si la base de datos contiene datos que no son ASCII, pero la base de datos no está marcada con la página de códigos numérica, el número de página de códigos del sistema actual se escribe al principio de la tercera línea.
  • Las líneas restantes del archivo de texto son los datos de la página de códigos especificada.
  • Si una tabla contiene secuencias, MsiDatabaseExport exporta cada secuencia de la tabla a un archivo independiente.

Páginas de códigos neutrales y no neutrales

Para facilitar la localización, empiece con una base de datos que tenga una página de códigos neutral:

  • Una base de datos en blanco tiene una página de códigos neutral.
  • Una base de datos que no contiene caracteres extendidos que requieren que una página de códigos se represente en ASCII tiene una página de códigos neutral.

Para obtener más información, consulte Crear una base de datos con una página de códigos neutral.

Las páginas de códigos neutrales y no neutrales tienen las siguientes características:

  • Si se importa un archivo de almacenamiento de texto con una página de códigos no neutral en una base de datos que tiene otra página de códigos no neutral, el instalador devuelve un error cuando se llama a MsiDatabaseImport .
  • Un archivo de almacenamiento de texto con una página de códigos neutral se puede importar en una base de datos que tenga cualquier página de códigos.
  • Un archivo de almacenamiento de texto con cualquier página de códigos se puede importar en una base de datos que tenga una página de códigos neutral.
  • Importar un archivo de almacenamiento de texto en una base de datos con una página de códigos neutral establece la página de códigos de la base de datos en la página de códigos del archivo de almacenamiento. Todos los archivos de almacenamiento importados seguidamente en la base de datos deben tener la misma página de códigos que el primer archivo.

Para más información, consulte Determinación de la página de códigos de una base de datos de instalación y Establecimiento de la página de códigos de una base de datos.

Los archivos de almacenamiento de texto exportados por MsiDatabaseExport se pueden usar con sistemas de control de versiones. Use las funciones de base de datos o un editor de tablas de base de datos para editar la base de datos.

Puede agregar información de localización a una base de datos de instalación mediante un editor de tablas de base de datos o la API de Windows Installer. Para obtener más información, consulte Control de páginas de códigos de cadenas de parámetros.