Настройка кодовой страницы базы данных

Всегда задается кодовая страница базы данных перед добавлением каких-либо сведений о локализации. Пытаться задать кодовую страницу после ввода данных в базу данных не рекомендуется, так как это может привести к повреждению расширенных символов. Локализацию можно значительно упростить, начиная с базы данных, которая является нейтральной кодовой страницей. Дополнительные сведения см. в статье Создание базы данных с нейтральной кодовой страницей. Вы можете определить текущую кодовую страницу базы данных, как описано в разделе Определение кодовой страницы базы данных установки. Список числовых кодовых страниц см. в разделе Локализация таблиц error и ActionText .

Вы можете задать кодовую страницу пустой базы данных или базы данных с нейтральной кодовой страницей, импортировав текстовый архивный файл, содержащий ненейтральную кодовую страницу с msiDatabaseImport. При этом для кодовой страницы базы данных будет задана кодовая страница импортированного файла. Все архивные файлы, импортированные в базу данных, должны иметь ту же кодовую страницу, что и первый файл. Если текстовый архивный файл экспортируется из базы данных, кодовая страница архивного файла совпадает с родительской базой данных. См. раздел Обработка кодовых страниц импортированных и экспортированных таблиц.

Кодовая страница любой базы данных может иметь указанную числовую кодовую страницу с помощью MsiDatabaseImport для импорта текстового архивного файла в следующем формате: две пустые строки; за которой следует строка, содержащая числовую кодовую страницу, разделитель табуляции и точную строку: _ForceCodepage. Обратите внимание, что в Windows 2000 все строки в базе данных преобразуется в кодовую страницу _ForceCodepage. Это может быть предусмотрено при локализации существующей базы данных и преобразовании всех ненейтревых строк в новую кодовую страницу. Однако это приводит к ошибке, если база данных содержит не нейтральные строки, которые не должны быть преобразованы.

Служебная WiLangId.vbs содержит пример задания кодовой страницы пакета с помощью метода Import. Копия WiLangId.vbs предоставляется в пакете SDK установщика Windows. Эту служебную программу можно использовать для определения языковых версий, поддерживаемых базой данных (пакет), языка, используемого установщиком для любых строк в пользовательском интерфейсе, которые не создаются в базе данных (Product), или одной кодовой страницы ANSI для пула строк (codepage). Сведения об использовании WiLangId.vbs см. на странице справки : Управление языком и кодовой страницей.

Чтобы определить значения Product, Package и Codepage, выполните WiLangId.vbs следующим образом.

cscript wilangid.vbs[путь к базе данных]

Чтобы задать кодовую страницу пакета, выполните следующую командную строку.

cscript wilangid.vbs[путь к базе данных]Codepage[value]

Например, чтобы задать для codepage test.msi числовое значение кодовой страницы ANSI 1252, выполните следующую командную строку.

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