Festlegen der Codepage einer Datenbank
Legen Sie vor dem Hinzufügen von Lokalisierungsinformationen immer die Codepage einer Datenbank fest. Es wird nicht empfohlen, zu versuchen, die Codepage nach der Eingabe der Daten in die Datenbank festzulegen, da hierdurch erweiterte Zeichen beschädigt werden könnten. Die Lokalisierung kann erheblich erleichtert werden, wenn mit einer Datenbank mit neutraler Codepage begonnen wird. Ausführliche Informationen finden Sie unter Erstellen einer Datenbank mit einer neutralen Codepage. Sie können die aktuelle Codepage einer Datenbank ermitteln, wie in Festlegen der Codepage einer Installationsdatenbank beschrieben. Eine Liste mit numerischen Codepages finden Sie unter Lokalisieren der Fehler- und ActionText-Tabellen.
Sie können die Codepage einer leeren Datenbank oder eine Datenbank mit einer neutralen Codepage festlegen, indem Sie eine Textarchivdatei mit einer nicht neutralen Codepage mit MsiDatabaseImport importieren. Dadurch wird die Codepage der Datenbank auf die Codepage der importierten Datei festgelegt. Alle anschließend in die Datenbank importierten Archivdateien müssen dann dieselbe Codepage wie die erste Datei aufweisen. Wenn eine Textarchivdatei aus einer Datenbank exportiert wird, ist die Codepage der Archivdatei dieselbe wie die der übergeordneten Datenbank. Siehe Codepage-Behandlung importierter und exportierter Tabellen.
Die Codepage einer beliebigen Datenbank kann mithilfe von MsiDatabaseImport auf eine angegebene numerische Codepage festgelegt werden, um eine Textarchivdatei mit dem folgenden Format zu importieren: Zwei leere Zeilen, gefolgt von einer Zeile mit der numerischen Codepage, einem Tabstopptrennzeichen und der genauen Zeichenfolge: _ForceCodepage. Beachten Sie, dass mit Windows 2000 alle Zeichenfolgen in der Datenbank in die Codepage von _ForceCodepage übersetzt werden. Dies kann beabsichtigt sein, wenn eine vorhandene Datenbank lokalisiert und alle nicht neutralen Zeichenfolgen in die neue Codepage übersetzt werden. Dies führt jedoch zu einem Fehler, wenn die Datenbank nicht neutrale Zeichenfolgen enthält, die nicht übersetzt werden sollen.
Das Hilfsprogramm WiLangId.vbs stellt ein Beispiel zum Festlegen der Codepage eines Pakets mithilfe der Import-Methode bereit. Eine Kopie von WiLangId.vbs wird im Windows Installer SDK bereitgestellt. Mit diesem Dienstprogramm können Sie die von der Datenbank unterstützten Sprachversionen (Package) ermitteln, die Sprache, die das Installationsprogramm für alle Zeichenfolgen in der Benutzeroberfläche verwendet, die nicht in der Datenbank erstellt wurden (Product), oder die einzelne ANSI-Codepage für den Zeichenfolgenpool (Codepage). Informationen zur Verwendung von WiLangId.vbs finden Sie auf der Hilfeseite: Verwalten von Sprache und Codepage.
Um die Werte von „Product“, „Package“ und „Codepage“ zu ermitteln, führen Sie „WiLangId.vbs“ wie folgt aus.
cscript wilangid.vbs [Pfad zur Datenbank]
Führen Sie die folgende Befehlszeile aus, um die Codepage des Pakets festzulegen.
cscript wilangid.vbs [Pfad zur Datenbank] Codepage [Wert]
Um beispielsweise die Codepage von test.msi auf den numerischen ANSI-Codepagewert 1252 einzustellen, führen Sie die folgende Befehlszeile aus.
cscript wilangid.vbs c:\temp\test.msi Codepage 1252