Manipulação de página de código das cadeias de caracteres de parâmetro

Você pode adicionar informações de localização a um banco de dados de instalação usando um editor de tabela de banco de dados, como o Orca, fornecido com o SDK do Windows Installer, ou chamando as funções de banco de dados de um aplicativo. Tenha cuidado para passar apenas parâmetros de cadeia de caracteres que usam a página de código do banco de dados que está sendo localizado. Se um parâmetro de cadeia de caracteres contiver caracteres que não podem ser representados pela página de código do banco de dados, o Instalador retornará um erro ao chamar MsiDatabaseImport. Para ver a lista de páginas de código numérico, confira Como localizar as tabelas Error e ActionText.

Para obter mais informações, confira Como determinar a página de código de um banco de dados de instalação.

Como adicionar informações de localização a um banco de dados

Quando você adiciona informações de localização a um banco de dados, a página de código do banco de dados deve ter suporte do sistema operacional. Não precisa ser a página de código atual do sistema. IsValidCodePage deve retornar TRUE para a página de código do banco de dados. Como o sistema converte cadeias de caracteres ANSI em Unicode, haverá um erro se a página de código do usuário atual não for igual à página de código do banco de dados.

Chamar a versão ANSI da API do Windows Installer converte a cadeia de caracteres localizada em Unicode usando a página de código do sistema atual. Quando o banco de dados é confirmado, a cadeia de caracteres Unicode é convertida em ANSI usando a página de código do banco de dados. Se a página de código do sistema atual for diferente da página de código da cadeia de caracteres localizada, o resultado poderá ser uma perda de dados e uma conversão de cadeia de caracteres incorreta.

O procedimento a seguir mostra como armazenar os dados de localização.

Para armazenar dados de localização

  1. Defina a página de código do banco de dados como a página de código da cadeia de caracteres localizada.
  2. Converta a cadeia de caracteres ANSI em Unicode usando a função MultiByteToWideChar e especifique a página de código dos dados localizados.
  3. Chame a versão Unicode da API do Windows Installer usando a cadeia de caracteres Unicode para adicionar os dados localizados.
  4. Confirme as alterações de localização no banco de dados usando MsiDatabaseCommit.

Você também pode adicionar informações de localização a um banco de dados de instalação importando e exportando arquivos de texto ASCII. Para obter mais informações, confira Tratamento da página de código de tabelas importadas e exportadas.