Partager via


Définition de la page de code d’une base de données

Définissez toujours la page de code d’une base de données avant d’ajouter des informations de localisation. Il n’est pas recommandé de tenter de définir la page de code après avoir entré des données dans la base de données, car cela risque d’endommager les caractères étendus. La localisation peut être grandement facilitée en commençant par une base de données qui est neutre en page de code. Pour plus d’informations, consultez la page Création d’une base de données avec un code neutre. Vous pouvez déterminer la page de code actuelle d’une base de données comme décrit dans Détermination de la page de code d’une base de données d’installation. Pour obtenir la liste des pages de code numériques, consultez Localisation des tables Error et ActionText.

Vous pouvez définir la page de code d’une base de données vide, ou d’une base de données avec une page de code neutre, en important un fichier d’archive texte ayant une page de code non neutre avec MsiDatabaseImport. Cette opération définit la page de code de la base de données sur la page de code du fichier importé. Tous les fichiers d’archive importés ultérieurement dans la base de données doivent alors avoir la même page de code que le premier fichier. Si un fichier d’archive de texte est exporté à partir d’une base de données, la page de code du fichier d’archive est identique à la base de données parente. Consultez Gestion des pages de code des tables importées et exportées.

La page de code d’une base de données peut être définie sur une page de code numérique spécifiée à l’aide de MsiDatabaseImport pour importer un fichier d’archive de texte au format suivant : Deux lignes vides ; une ligne contenant la page de code numérique, un délimiteur de tabulation et la chaîne exacte suivante : _ForceCodepage. Notez qu’avec Windows 2000, toutes les chaînes de la base de données sont converties en page de code de _ForceCodepage. Cela peut être prévu lors de la localisation d’une base de données existante et de la traduction de toutes les chaînes non neutres vers la nouvelle page de code. Toutefois, cela provoque une erreur si la base de données contient des chaînes non neutres qui ne doivent pas être traduites.

L’utilitaire WiLangId.vbs fournit un exemple de définition de la page de code d’un package à l’aide de la méthode Import. Une copie de WiLangId.vbs est fournie dans le SDK Windows Installer. Vous pouvez utiliser cet utilitaire pour déterminer les versions linguistiques prises en charge par la base de données (Package), la langue utilisée par le programme d’installation pour toutes les chaînes de l’interface utilisateur qui ne sont pas créées dans la base de données (Product) ou la page de code ANSI unique pour le pool de chaînes (Codepage). Pour plus d’informations sur l’utilisation de WiLangId.vbs consultez la page d’aide : Gérer la langue et la page de code.

Pour déterminer les valeurs de Product, Package et Codepage, exécutez WiLangId.vbs comme suit.

cscript wilangid.vbs[chemin d’accès à la base de données]

Pour définir la page de code du package, exécutez la ligne de commande suivante.

cscript wilangid.vbs[chemin d’accès à la base de données]Codepage[valeur]

Par exemple, pour définir la page de code de test.msi sur la valeur de la page de code ANSI numérique 1252, exécutez la ligne de commande suivante.

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