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é d'essayer de définir la page de code après avoir saisi les données dans la base de données, car cela pourrait corrompre les caractères étendus. La localisation peut être grandement facilitée en commençant par une base de données sans page de code. Pour plus d'informations, voir Création d'une base de données avec une page de 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. Reportez-vous à la section Localisation des tables Error et ActionText pour obtenir une liste des pages de code numériques.

Vous pouvez définir la page de code d'une base de données vierge ou d'une base de données dont la page de code est neutre en important un fichier d'archive texte dont la page de code n'est pas neutre à l'aide de MsiDatabaseImport. La page de code de la base de données est ainsi remplacée par 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 texte est exporté à partir d'une base de données, la page de code du fichier d'archive est la même que celle de la base de données parente. Voir Traitement 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 en utilisant MsiDatabaseImport pour importer un fichier d'archive texte au format suivant : Deux lignes vierges, suivies d'une ligne contenant la page de code numérique, un délimiteur de tabulation et la chaîne exacte : _ForceCodepage. Notez que sous Windows 2000, toutes les chaînes de la base de données sont converties en page de code _ForceCodepage. Cela peut être utile lorsque vous localisez une base de données existante et que vous traduisez toutes les chaînes non neutres dans la nouvelle page de code. Cependant, 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 la manière de définir la page de code d'un package en utilisant la méthode Import. Une copie de WiLangId.vbs est fournie dans le SDK de l'installateur Windows. 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 enregistrées dans la base de données (Product), ou la page de code ANSI unique pour le pool de chaînes (Codepage). Pour des informations sur l'utilisation de WiLangId.vbs, voir 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 numérique de la page de code ANSI 1252, exécutez la ligne de commande suivante.

cscript wilangid.vbs c:\Ntempérature test.msi Page de code 1252