Compartilhar via


Configurando a página de código de um banco de dados

Sempre defina a página de código de um banco de dados antes de adicionar qualquer informação de localização. A tentativa de definir a página de código depois de inserir dados no banco de dados não é recomendada porque isso pode corromper caracteres estendidos. A localização pode ser muito facilitada começando com um banco de dados neutro em termos de página de código. Para obter detalhes, consulte Criando um banco de dados com uma página de código neutra. Você pode determinar a página de código atual de um banco de dados conforme descrito em Determinando a página de código de um banco de dados de instalação. Consulte Localizando as tabelas Error e ActionText para obter uma lista de páginas de código numérico.

Você pode definir a página de código de um banco de dados em branco ou um banco de dados com uma página de código neutra importando um arquivo de texto com uma página de código não neutra com MsiDatabaseImport. Isso define a página de código do banco de dados para a página de código do arquivo importado. Todos os arquivos compactados importados posteriormente para o banco de dados devem ter a mesma página de código que o primeiro arquivo. Se um arquivo de texto for exportado de um banco de dados, a página de código do arquivo será a mesma do banco de dados pai. Consulte Manipulação de páginas de código de tabelas importadas e exportadas.

A página de código de qualquer banco de dados pode ser definida como uma página de código numérico especificada usando MsiDatabaseImport para importar um arquivo de texto com o seguinte formato: duas linhas em branco; seguidas por uma linha que contém a página de código numérico, um delimitador de tabulação e a cadeia de caracteres exata: _ForceCodepage. Com o Windows 2000, isso converte todas as cadeias de caracteres no banco de dados na página de código do _ForceCodepage. Isso pode ser intencional ao localizar um banco de dados existente e converter todas as cadeias de caracteres não neutras na nova página de código. No entanto, isso causará um erro se o banco de dados contiver cadeias de caracteres não neutras que não devem ser convertidas.

O utilitário WiLangId.vbs fornece um exemplo de como definir a página de código de um pacote usando o método Import. Uma cópia de WiLangId.vbs é fornecida no SDK do Windows Installer. Você pode usar esse utilitário para determinar as versões de idioma que são suportadas pelo banco de dados (Pacote), o idioma que o instalador usa para cadeias de caracteres na interface do usuário que não são criadas no banco de dados (Produto) ou a única página de código ANSI para o conjunto de cadeias de caracteres (Página de código). Para obter informações sobre como usar WiLangId.vbs, consulte a página de ajuda: Gerenciar idioma e página de código.

Para determinar os valores de produto, pacote e página de código, execute WiLangId.vbs da seguinte maneira.

cscript wilangid.vbs [caminho até o banco de dados]

Para definir a página de código do pacote, execute a seguinte linha de comando.

cscript wilangid.vbs [caminho até o banco de dados] Página de código [valor]

Por exemplo, para definir a página de código de test.msi como o valor numérico da página de código ANSI 1252, execute a linha de comando a seguir.

cscript wilangid.vbs c:\temp\test.msi Codepage 1252