Конвертер для правильного отображения файла word. Пакет обеспечения совместимости Microsoft Office для форматов файлов Word, Excel и PowerPoint. Различные кодировки для разных алфавитов

ДЛЯ ТЕХ У КОГО УСТАНОВЛЕН СТАРЫЙ MICROSOFT OFFICE ТАКОЙ КАК 97, 2003, 2007 и 2010

ДЛЯ СОВМЕСТИМОСТИ ФОРМАТОВ ОФИСА УСТАНОВИТЕ СООТВЕТСТВУЮЩЕЕ ПРОГРАММНО ОБЕСПЕЧЕНИЕ.

что бы новые форматы открывались в старых версиях

Обзор

Пользователям программ Word, Excel или PowerPoint пакетов Microsoft Office XP и 2003: перед загрузкой пакета обеспечения совместимости установите обновления с высоким приоритетом с веб-сайта Microsoft Update перед тем, как загрузить пакет обеспечения совместимости .Установив пакет обеспечения совместимости в качестве дополнения к пакетам Microsoft Office 2000, Office XP или Office 2003, вы сможете открывать, редактировать и сохранять файлы в новых форматах, которые используются в последних версиях программ Word, Excel и PowerPoint . Пакет обеспечения совместимости можно также использовать вместе со средствами просмотра Microsoft Office Word 2003, Excel 2003 и PowerPoint 2003 для просмотра файлов, сохраненных в новых форматах. Дополнительные сведения о пакете обеспечения совместимости см. в статье базы знаний .

Примечание. Если программа Microsoft Word 2000 или Microsoft Word 2002 используется для чтения или записи документов, содержащих набор сложных знаков, то для правильного отображения документов Word в новых версиях приложения следует обратиться к сведениям, содержащимся в статье .

Администраторам: можно загрузить административный шаблон для конвертеров Word, Excel и PowerPoint , содержащийся в пакете обеспечения совместимости.

Обновление. Пакет обеспечения совместимости Microsoft Office обновлен и включает пакет обновления 2 (SP2). Теперь, если файлы DOCX или DOCM содержат настраиваемые теги XML, то теги удаляются при открытии файла в Word 2003. Дополнительные сведения см. в статье KB978951

Системные требования

  • Операционные системы: Windows 2000 Service Pack 4, Windows Server 2003, Windows Vista, Windows Vista Service Pack 1, Windows XP Service Pack 1, Windows XP Service Pack 2, Windows XP Service Pack 3
    Windows 7;Windows Server 2008
  • Рекомендуемые программы Microsoft Office:
    • Microsoft Word 2000 с пакетом обновления 3 (SP3), Microsoft Excel 2000 с пакетом обновления 3 (SP3) и Microsoft PowerPoint 2000 с пакетом обновления 3 (SP3)
  • Microsoft Word 2002 с пакетом обновления 3 (SP3), Microsoft Excel 2002 с пакетом обновления 3 (SP3) и Microsoft PowerPoint 2002 с пакетом обновления 3 (SP3)
  • Microsoft Office Word 2003 с пакетом обновления 1 (SP1) или более поздней версии, Microsoft Office Excel 2003 с пакетом обновления 1 (SP1) или более поздней версии и Microsoft Office PowerPoint 2003 с пакетом обновления 1 (SP1) или более поздней версии
  • Средство просмотра Microsoft Office Word 2003.
  • Средство просмотра Microsoft Office Excel 2003
  • Средство просмотра Microsoft Office PowerPoint 2003

Инструкции

Установка обновления

  1. Убедитесь, что ваша система обновлена, установив обновления с высоким приоритетом и обязательные обновления, загруженные с веб-сайта Microsoft Update (требуется для пользователей Microsoft Office XP и 2003) .
  1. После установки обновлений с высоким приоритетом и обязательных обновлений с веб-сайта Microsoft Update загрузите пакет обеспечения совместимости, нажав кнопку , расположенную выше, и сохранив файл на жестком диске.
  1. Чтобы запустить программу установки, дважды щелкните сохраненный на жестком диске исполняемый файл FileFormatConverters.exe .
  1. Выполните установку, следуя указаниям на экране.

Удаление загружаемого файла

Когда вы открываете текстовый файл в Microsoft Word или другой программе (например, на компьютере, язык операционной системы на котором отличается от того, на котором написан текст в файле), кодировка помогает программе определить, в каком виде нужно вывести текст на экран, чтобы его можно было прочитать.

В этой статье

Общие сведения о кодировке текста

Текст, который отображается в виде текста на экране, на самом деле сохраняется как числовые значения в текстовом файле. Компьютер переводит числовые значения в видимые символы. Для этого используется стандарт кодировки.

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

Различные кодировки для разных алфавитов

Сведения о кодировке, сохраняемые с текстовым файлом, используются компьютером для вывода текста на экран. Например, в кодировке "Кириллица (Windows)" знаку "Й" соответствует числовое значение 201. Когда вы открываете файл, содержащий этот знак, на компьютере, на котором используется кодировка "Кириллица (Windows)", компьютер считывает число 201 и выводит на экран знак "Й".

Однако если тот же файл открыть на компьютере, на котором по умолчанию используется другая кодировка, на экран будет выведен знак, соответствующий числу 201 в этой кодировке. Например, если на компьютере используется кодировка "Западноевропейская (Windows)", знак "Й" из исходного текстового файла на основе кириллицы будет отображен как "É", поскольку именно этому знаку соответствует число 201 в данной кодировке.

Юникод: единая кодировка для разных алфавитов

Чтобы избежать проблем с кодированием и декодированием текстовых файлов, можно сохранять их в Юникоде. В состав этой кодировки входит большинство знаков из всех языков, которые обычно используются на современных компьютерах.

Так как Word работает на базе Юникода, все файлы в нем автоматически сохраняются в этой кодировке. Файлы в Юникоде можно открывать на любом компьютере с операционной системой на английском языке независимо от языка текста. Кроме того, на таком компьютере можно сохранять в Юникоде файлы, содержащие знаки, которых нет в западноевропейских алфавитах (например, греческие, кириллические, арабские или японские).

Выбор кодировки при открытии файла

Если в открытом файле текст искажен или выводится в виде вопросительных знаков либо квадратиков, возможно, Word неправильно определил кодировку. Вы можете указать кодировку, которую следует использовать для отображения (декодирования) текста.

    Откройте вкладку Файл .

    Нажмите кнопку Параметры .

    Нажмите кнопку Дополнительно .

    Перейдите к разделу Общие и установите флажокПодтверждать преобразование формата файла при открытии .

    Примечание: Если установлен этот флажок, Word отображает диалоговое окно Преобразование файла при каждом открытии файла в формате, отличном от формата Word (то есть файла, который не имеет расширения DOC, DOT, DOCX, DOCM, DOTX или DOTM). Если вы часто работаете с такими файлами, но вам обычно не требуется выбирать кодировку, не забудьте отключить этот параметр, чтобы это диалоговое окно не выводилось.

    Закройте, а затем снова откройте файл.

    В диалоговом окне Преобразование файла выберите пункт Кодированный текст .

    В диалоговом окне Преобразование файла установите переключатель Другая и выберите нужную кодировку из списка.

    В области Образец

Если почти весь текст выглядит одинаково (например, в виде квадратов или точек), возможно, на компьютере не установлен нужный шрифт. В таком случае можно установить дополнительные шрифты.

Чтобы установить дополнительные шрифты, сделайте следующее:

    Нажмите кнопку Пуск и выберите пункт Панель управления .

    Выполните одно из указанных ниже действий.

    В Windows 7

    1. На панели управления выберите элемент Удаление программ .

      Изменить .

    В Windows Vista

      На панели управления выберите раздел Удаление программы .

      В списке программ щелкните Microsoft Office или Microsoft Word, если он был установлен отдельно от пакета Microsoft Office, и нажмите кнопку Изменить .

    В Windows XP

      На панели управления щелкните элемент Установка и удаление программ .

      В списке Установленные программы щелкните Microsoft Office или Microsoft Word, если он был установлен отдельно от пакета Microsoft Office, и нажмите кнопку Изменить .

    В группе Изменение установки Microsoft Office нажмите кнопку Добавить или удалить компоненты и затем нажмите кнопку Продолжить .

    В разделе Параметры установки разверните элемент Общие средства Office , а затем - Многоязыковая поддержка .

    Выберите нужный шрифт, щелкните стрелку рядом с ним и выберите пункт Запускать с моего компьютера .

Совет: При открытии текстового файла в той или иной кодировке в Word используются шрифты, определенные в диалоговом окне Параметры веб-документа . (Чтобы вызвать диалоговое окно Параметры веб-документа , нажмите кнопку Microsoft Office , затем щелкните Параметры Word и выберите категорию Дополнительно . В разделе Общие нажмите кнопку Параметры веб-документа .) С помощью параметров на вкладке Шрифты диалогового окна Параметры веб-документа можно настроить шрифт для каждой кодировки.

Выбор кодировки при сохранении файла

Если не выбрать кодировку при сохранении файла, будет использоваться Юникод. Как правило, рекомендуется применять Юникод, так как он поддерживает большинство символов большинства языков.

Если документ планируется открывать в программе, которая не поддерживает Юникод, вы можете выбрать нужную кодировку. Например, в операционной системе на английском языке можно создать документ на китайском (традиционное письмо) с использованием Юникода. Однако если такой документ будет открываться в программе, которая поддерживает китайский язык, но не поддерживает Юникод, файл можно сохранить в кодировке "Китайская традиционная (Big5)". В результате текст будет отображаться правильно при открытии документа в программе, поддерживающей китайский язык (традиционное письмо).

Примечание: Так как Юникод - это наиболее полный стандарт, при сохранении текста в других кодировках некоторые знаки могут не отображаться. Предположим, например, что документ в Юникоде содержит текст на иврите и языке с кириллицей. Если сохранить файл в кодировке "Кириллица (Windows)", текст на иврите не отобразится, а если сохранить его в кодировке "Иврит (Windows)", то не будет отображаться кириллический текст.

Если выбрать стандарт кодировки, который не поддерживает некоторые символы в файле, Word пометит их красным. Вы можете просмотреть текст в выбранной кодировке перед сохранением файла.

При сохранении файла в виде кодированного текста из него удаляется текст, для которого выбран шрифт Symbol, а также коды полей.

Выбор кодировки

    Откройте вкладку Файл .

    В поле Имя файла введите имя нового файла.

    В поле Тип файла выберите Обычный текст .

    Если появится диалоговое окно Microsoft Office Word - проверка совместимости , нажмите кнопку Продолжить .

    В диалоговом окне Преобразование файла выберите подходящую кодировку.

    • Чтобы использовать стандартную кодировку, выберите параметр Windows (по умолчанию) .

      Чтобы использовать кодировку MS-DOS, выберите параметр MS-DOS .

      Чтобы задать другую кодировку, установите переключатель Другая и выберите нужный пункт в списке. В области Образец можно просмотреть текст и проверить, правильно ли он отображается в выбранной кодировке.

      Примечание: Чтобы увеличить область отображения документа, можно изменить размер диалогового окна Преобразование файла .

    Если появилось сообщение "Текст, выделенный красным, невозможно правильно сохранить в выбранной кодировке", можно выбрать другую кодировку или установить флажок Разрешить подстановку знаков .

    Если разрешена подстановка знаков, знаки, которые невозможно отобразить, будут заменены ближайшими эквивалентными символами в выбранной кодировке. Например, многоточие заменяется тремя точками, а угловые кавычки - прямыми.

    Если в выбранной кодировке нет эквивалентных знаков для символов, выделенных красным цветом, они будут сохранены как внеконтекстные (например, в виде вопросительных знаков).

    Если документ будет открываться в программе, в которой текст не переносится с одной строки на другую, вы можете включить в нем жесткие разрывы строк. Для этого установите флажок Вставлять разрывы строк и укажите нужное обозначение разрыва (возврат каретки (CR), перевод строки (LF) или оба значения) в поле Завершать строки .

Поиск кодировок, доступных в Word

Word распознает несколько кодировок и поддерживает кодировки, которые входят в состав системного программного обеспечения.

Ниже приведен список письменностей и связанных с ними кодировок (кодовых страниц).

Система письменности

Кодировки

Используемый шрифт

Многоязычная

Юникод (UCS-2 с прямым и обратным порядком байтов, UTF-8, UTF-7)

Стандартный шрифт для стиля "Обычный" локализованной версии Word

Арабская

Windows 1256, ASMO 708

Китайская (упрощенное письмо)

GB2312, GBK, EUC-CN, ISO-2022-CN, HZ

Китайская (традиционное письмо)

BIG5, EUC-TW, ISO-2022-TW

Кириллица

Windows 1251, KOI8-R, KOI8-RU, ISO8859-5, DOS 866

Английская, западноевропейская и другие, основанные на латинице

Windows 1250, 1252-1254, 1257, ISO8859-x

Греческая

Японская

Shift-JIS, ISO-2022-JP (JIS), EUC-JP

Корейская

Wansung, Johab, ISO-2022-KR, EUC-KR

Вьетнамская

Индийские: тамильская

Индийские: непальская

ISCII 57002 (деванагари)

Индийские: конкани

ISCII 57002 (деванагари)

Индийские: хинди

ISCII 57002 (деванагари)

Индийские: ассамская

Индийские: бенгальская

Индийские: гуджарати

Индийские: каннада

Индийские: малаялам

Индийские: ория

Индийские: маратхи

ISCII 57002 (деванагари)

Индийские: панджаби

Индийские: санскрит

ISCII 57002 (деванагари)

Индийские: телугу

    Для использования индийских языков необходима их поддержка в операционной системе и наличие соответствующих шрифтов OpenType.

    Для непальского, ассамского, бенгальского, гуджарати, малаялам и ория доступна только ограниченная поддержка.

Обзор

Пользователям программ Word, Excel или PowerPoint пакетов Microsoft Office XP и 2003: перед загрузкой пакета обеспечения совместимости установите обновления с высоким приоритетом с веб-сайта Microsoft Updateперед тем, как загрузить пакет обеспечения совместимости.

Установив пакет обеспечения совместимости в качестве дополнения к пакетам Microsoft Office 2000, Office XP или Office 2003, вы сможете открывать, редактировать и сохранять файлы в новых форматах, которые используются в последних версиях программ Word, Excel и PowerPoint. Пакет обеспечения совместимости можно также использовать вместе со средствами просмотра Microsoft Office Word 2003, Excel 2003 и PowerPoint 2003 для просмотра файлов, сохраненных в новых форматах. Дополнительные сведения о пакете обеспечения совместимости см. в статье базы знаний 924074.

Примечание . Если программа Microsoft Word 2000 или Microsoft Word 2002 используется для чтения или записи документов, содержащих набор сложных знаков, то для правильного отображения документов Word в новых версиях приложения следует обратиться к сведениям, содержащимся в статье 925451.

Администраторам : можно загрузить административный шаблон для конвертеров Word, Excel и PowerPoint, содержащийся в пакете обеспечения совместимости.

Обновление . Пакет обеспечения совместимости Microsoft Office обновлен и включает пакет обновления 2 (SP2). Теперь, если файлы DOCX или DOCM содержат настраиваемые теги XML, то теги удаляются при открытии файла в Word 2003. Дополнительные сведения см. в статье KB978951

Системные требования

Операционные системы:

Windows 2000 Service Pack 4, Windows Server 2003, Windows Vista, Windows Vista Service Pack 1, Windows XP Service Pack 1, Windows XP Service Pack 2, Windows XP Service Pack 3
Windows 7;Windows Server 2008

Microsoft Word 2000 с пакетом обновления 3 (SP3), Microsoft Excel 2000 с пакетом обновления 3 (SP3) и Microsoft PowerPoint 2000 с пакетом обновления 3 (SP3)

Microsoft Word 2002 с пакетом обновления 3 (SP3), Microsoft Excel 2002 с пакетом обновления 3 (SP3) и Microsoft PowerPoint 2002 с пакетом обновления 3 (SP3)

Microsoft Office Word 2003 с пакетом обновления 1 (SP1) или более поздней версии, Microsoft Office Excel 2003 с пакетом обновления 1 (SP1) или более поздней версии и Microsoft Office PowerPoint 2003 с пакетом обновления 1 (SP1) или более поздней версии

Средство просмотра Microsoft Office Word 2003.

Средство просмотра Microsoft Office Excel 2003

Средство просмотра Microsoft Office PowerPoint 2003

Инструкции

Установка обновления
Убедитесь, что ваша система обновлена, установив обновления с высоким приоритетом и обязательные обновления, загруженные с веб-сайта Microsoft Update(требуется для пользователей Microsoft Office XP и 2003).

После установки обновлений с высоким приоритетом и обязательных обновлений с веб-сайта Microsoft Update загрузите пакет обеспечения совместимости, нажав кнопку Загрузка, расположенную выше, и сохранив файл на жестком диске.

Чтобы запустить программу установки, дважды щелкните сохраненный на жестком диске исполняемый файл FileFormatConverters.exe.

Выполните установку, следуя указаниям на экране.

Удаление загружаемого файла

В меню «Пуск» операционной системы Windows щелкните значок Панель управления.

Выберите Установка и удаление программ.

В списке установленных программ выберите Пакет обеспечения совместимости для выпуска 2007 системы Office, а затем нажмите Удалить или Добавить или удалить. При появлении диалогового окна следуйте инструкциям по удалению программы.

Нажмите кнопку Да или ОК, чтобы подтвердить удаление программы.


Полный текст материала Пакет обеспечения совместимости Microsoft Office 2010 для форматов файлов Word, Excel и PowerPoint смотрите в скачиваемом файле .
На странице приведен фрагмент.

При решении повседневных ИТ-задач, таких как администрирование сети и поддержка пользователей, часто применяются различные файлы, особенно документы, составленные в текстовых редакторах. К сожалению, встроенные инструменты Windows позволяют работать с документами только как с файлами; стандартные инструменты не обеспечивают обработку внутренних данных Word, например преобразование типа документа.

Я составил сценарий WSH (Windows Script Host) под названием ConvertWord, который используется в качестве командной оболочки для Microsoft Word и облегчает работу с документами. Кроме того, сценарий может быть полезен для тестирования некорректных документов.

Требования ConvertWord

Для использования ConvertWord на компьютере должен быть установлен Word 97 или более поздняя версия текстового редактора. Полный исходный текст ConvertWord можно загрузить с Web-узла нашего журнала. Фрагменты сценария ConvertWord приведены ниже. Файлы convertword.wsf и convertword.cmd следует сохранить в одной папке.

ConvertWord может автоматически задействовать любой преобразователь файловых форматов, реализованный в Word. Вместе с Word поставляется базовый набор преобразователей форматов файлов для типовых документов. Однако в этот набор не входят специальные конвертеры, например для документов Microsoft Works или WordPerfect. Чтобы получить эти и другие факультативные конвертеры, необходимо выполнить специальную установку Word.

Стандартные конвертеры Word, которые входят в пакет Microsoft Office Resource Kits, можно загрузить со страницы Office 2003 Editions Resource Kit по адресу http://www.microsoft.com/office/ork/2003/default.htm . Конвертеры из пакета ресурсов совместимы с Word 97 и более новыми версиями редактора. После установки пакета ресурсов следует перейти в созданный каталог (по умолчанию, \%programfiles%orktools) и отыскать файл с набором конвертеров (oconvpck.exe), а затем запустить oconvpck.exe на всех компьютерах, на которых нужно развернуть конвертеры.

Назначение ConvertWord

Первоначально целью создания ConvertWord было выполнение некоторых задач, недоступных для мастера Batch Conversion Wizard редактора Word. Мастер Batch Conversion Wizard - полезное дополнение к инструментальному набору любого администратора. Мастер представляет собой шаблон Word, который выполняет преобразование одного входного формата в один выходной формат. Более подробную информацию о таком преобразовании можно найти в статье Microsoft «How to automatically convert many documents to Word 2002 format» по адресу http://support.microsoft.com/?kbid=313714 .

Мастер Batch Conversion Wizard выполняет много задач, но не оптимизирован для некоторых из них, например дистанционного администрирования или автоматизации простых преобразований для конечных пользователей, совместно работающих с документами в отдельных узлах сети. ConvertWord поможет решить подобные задачи распределенного преобразования, выполняя следующие базовые операции.

  • Направляет в систему запрос об имеющейся в ней версии Word.
  • Автоматически открывает списки документов смешанных типов произвольной длины.
  • Гарантированно сохраняет документы с уникальными именами в формате Word (по умолчанию) или других форматах.
  • Тестирует документы в поисках проблем форматирования и некорректных пользовательских паролей.

Как работает ConvertWord

Процесс преобразования ConvertWord - четырехступенчатый. На первом этапе сценарий генерирует экземпляр приложения Word, как показано во фрагменте листинга 1 с меткой A. Часть исходного текста сценария предназначена для того, чтобы максимально уменьшить число диалоговых окон. Например, исходный текст с меткой B блокирует диалоговые окна, когда это возможно.

На втором этапе ConvertWord открывает каждый документ. Объект Word содержит набор Documents; при вызове метода Open этого набора (фрагмент с меткой A в листинге 2 ) документ извлекается. Если известно имя документа и нужно, чтобы Word автоматически определил его формат, можно вызвать метод, указав в качестве аргумента только имя документа.

Или же можно указать формат документа в качестве другого параметра для метода Open. К сожалению, в зависимости от версии Word, для метода Open требуется до 16 параметров. Поскольку управляющий форматом параметр расположен на десятом месте, необходимо указать девять предыдущих параметров. В результате получается длинная, громоздкая строка. Информацию о параметрах можно получить по адресу http://msdn.microsoft.com/library/default.asp?url=/library/ enus/dv_wrcore/html/wrconwordobjectmodeloverview.asp или в Справке Word.

Параметры ConvertWord - FileName, ConfirmConversions, ReadOnly, AddToRecentFiles, PasswordDocument, PasswordTemplate, Revert, WritePasswordDocument, WritePasswordTemplate и Format. Параметр FileName - имя файла документа Word. С помощью параметра ConfirmConversions можно вывести на экран диалоговое окно, когда Word преобразует открытый документ. В ConvertWord этому параметру всегда присваивается значение False, чтобы облегчить автоматизацию.

Параметр ReadOnly управляет процессом открытия документа только для чтения; ConvertWord всегда присваивает данному параметру значение True, чтобы исходный документ не изменился. AddToRecentFiles определяет, будет ли открытый документ внесен в список RecentFiles текущего пользователя. Документ может быть одним из десятков или даже сотен, поэтому добавлять его к списку не рекомендуется и параметру присваивается значение False.

PasswordDocument - пароль для открытия защищенных документов, а PasswordTemplate - пароль для шаблонов. Эти значения бесполезны для документов, отличных от Word, поэтому вместо любого параметра можно указать две двойные кавычки («»), обозначающие пустую строку. Параметр Revert определяет, вернется ли сценарий к текущей открытой версии документа, если преобразуемый документ уже открыт. ConvertWord присваивает данному параметру значение True, чтобы избежать потери изменений и активизировать только открытый экземпляр документа.

Параметры WritePasswordDocument и WritePasswordTemplate указывают пароли, необходимые для сохранения открытого документа или шаблона. Для целей данной статьи эти параметры не обязательны, так как ConvertWord не перезаписывает исходный документ; поэтому в сценарии задается «» для каждого из этих аргументов.

Наконец, параметр Format представляет собой число, указывающее на метод, который Word использует для определения формата открытого документа. Правильно указать число непросто, так как числа и представляемые ими методы зависят от установленной версии Word, дополнительных конвертеров документов и порядка установки. Предположим, нам нужно открыть и преобразовать документ RTF (Rich Text Format) с кодом открытия формата 3. Чтобы открыть пример документа с помощью стандартного конвертера RTF, используется следующая процедура:

Set doc = Word.Documents._

Open(«c:my.rtf», False, _

True, False, «», «», _

True, «», «», 3)

Некоторые строки исходного кода в данной статье разбиты на несколько строк из-за недостатка места. Список дополнительных конвертеров документов с соответствующими номерами и стандартными расширениями можно отыскать с помощью набора FileConverters объекта. В исходном тексте листинга 3 показан список этих конвертеров. В списке нет стандартных конвертеров Word. Список стандартных конвертеров Word можно найти в табл. 1 и в справке по Word.

Подпрограмма CreateFormatCollections сценария ConvertWord отображает список конвертеров Word. Хотя сценарий отчасти упрощает задачу определения форматов открытия и сохранения, формат, используемый для открытия или сохранения документа, зависит от версии Word и порядка установки конвертеров.

После открытия документа его новая версия сохраняется с использованием метода SaveAs (фрагмент с меткой A в листинге 4 ). Метод SaveAs принимает до 16 параметров, но нам нужны только два, так как необходимый параметр SaveFormat - второй. Как и в случае с параметрами OpenFormat, необходимо указать коды формата открываемого документа в параметре SaveFormat. Чтобы указать формат сохранения - например, сохранить документ в чисто текстовом файле C:my.txt, - следует ввести команду

doc.SaveAs «C:my.txt», 2

Сохранив документ, ConvertWord закрывает его с помощью метода Close (метка B листинга 4). Значение False указывает, что Word должен отменить изменения, если документ после сохранения был изменен. Когда сценарий последовательно откроет, сохранит и закроет все документы, последним шагом будет выход из Word через вызов метода Quit программы Word (листинг 5 ).

Применение ConvertWord

Перед первым запуском ConvertWord полезно ознакомиться с информацией о локальной версии Word, выполнив команду

convertword /version

Эта команда показывает важную информацию, в том числе номер установленной на машине версии Word. Компания Microsoft перестала указывать номер версии в имени продукта начиная с Office 95 (которая называлась бы Office 7), но внутренний номер версии увеличивается на 1 с выпуском каждой следующей существенно обновленной версии. Такая же схема нумерации используется и в Word как в компоненте комплекса Office. Внутренние номера версий - 8 (Word 97), 9 (Word 2000), 10 (Word 2002) и 11 (Word 2003).

По умолчанию ConvertWord автоматически открывает файлы, делая обоснованные предположения об их формате (например, Word, простой текст, WordPerfect, RTF) и сохраняет их в виде документов Word, давая им уникальные имена, состоящие из имени файла, символа подчеркивания и номера. В ConvertWord предусмотрено несколько способов назначения документам имен. Имя файла можно ввести в качестве аргумента следующей команды:

convertword unicode.txt plain.txt

Otherdocscorel.wps

В результате такого подхода выходные файлы в формате Word сохраняются как unicode.doc, plain.doc и otherdocscorel.doc. Другой вариант - настроить ConvertWord на чтение файлов из стандартного источника, например:

convertword

Результаты команды, создающей список файлов, можно направить в ConvertWord следующим образом:

dir /s /b c:inbox*.txt

| convertword

Если входные данные не заданы, то ConvertWord просит указывать имена входных документов до тех пор, пока не будет дважды нажата комбинация клавиш Ctrl+C.

В ConvertWord реализован простой метод, который позволяет избежать перезаписи файлов, имеющих одинаковые имена. Предположим, требуется сохранить файл Word как текстовый файл с именем mylist.txt. Если файл с таким именем уже существует, то ConvertWord начинает перебирать последовательность производных имен - mylist_1.txt, mylist_2.txt и т. д. - до тех пор, пока не будет найдено неиспользованное имя. Затем это имя присваивается сохраняемому файлу. Как правило, на поиск имени файла уходит меньше времени, чем на открытие и сохранение документа вручную.

Изменение места хранения и имени файлов

ConvertWord сохраняет файлы в той же папке, в которой расположен исходный файл, с тем же базовым именем. Таким образом, при преобразовании файлов для многих пользователей или групп пользователей новые файлы будут размещаться рядом со старыми. Обычно пользователи знают «свои» файлы и помнят их имена.

Но каталог для записи преобразованных документов можно изменить. Для этого достаточно указать ключ /d с полным именем, которое может быть абсолютным или заданным относительно пути, указывающего на папку, в которой работает сценарий. ConvertWord расширяет путь до полного формата и создает соответствующий каталог, если он еще не существует.

convertword /d:c: empexports

Изменить базовое имя (имя файла без расширения) можно с помощью ключа /b. Если ConvertWord обнаруживает несколько файлов с одинаковым именем, то ConvertWord изменяет имена файлов, как объяснялось выше. Можно также применить ключ /x, чтобы указать расширение файла, отличное от стандартного расширения экспортируемого типа файла.

Создание документов, отличных от Word

По умолчанию ConvertWord автоматически генерирует документы Word. Если нужно создать документ, отличный от Word, то можно задействовать параметр /sa утилиты ConvertWord, чтобы изменить стандартный формат сохранения. Форматы, в которых можно сохранять файлы, изменяются в зависимости от версии Word и дополнительных конвертеров, имеющихся в системе, в которой работает ConvertWord. Первый шаг при сохранении файла в определенном формате - запуск Word с ключом /cnv для просмотра установленных конвертеров; номер конвертера соответствует типу, в котором требуется сохранить новый файл. Если все файлы необходимо сохранить в определенном формате, например RTF (номер 6), то к аргументам ConvertWord следует добавить ключ /sa:6. Например, чтобы преобразовать все файлы WordPerfect в текущей папке в RTF, следует запустить команду

dir /s /b *.wpd

| convertword /sa:6

В зависимости от версии Word и установленных конвертеров, число доступных форматов может быть велико. Перед преобразованием файлов нужно всегда проверять типы, так как в разных машинах их номера будут разными. Единственное исключение из этого досадного правила составляют стандартные встроенные конвертеры Word. Word 97 и более поздние версии имеют одинаковые значения от 0 до 6, и номера стандартных типов увеличиваются с добавлением новых версий. Для Word 2003 номера от 0 до 11 будут на всех машинах одинаковыми. Исключение из стандартных значений - вывод с номером -1. Это значение не соответствует конвертеру Word, а используется в качестве команды ConvertWord для записи данных из файла документа на консоль. Его можно задать с помощью ключа /sa - /sa:-1 или /sa+.

Обработка ошибок

В ходе крупномасштабных операций преобразования могут возникнуть проблемы с некоторыми файлами. Необходим способ отслеживания документов, попытка преобразования которых закончилась неудачей. Если преобразовать файл не удается, то ConvertWord передает имя файла и описательную информацию в стандартный поток ошибок (standard error stream - StdErr); администратор может отслеживать отказы, наблюдая, как имена файлов прокручиваются на экране, или перенаправляя данные об ошибках в файл для последующего анализа, например:

Errors.txt

По умолчанию ConvertWord показывает ошибки, приводя только имя файла и номер ошибки:

c:demo.rtf FAILED: 2

С помощью ключа /v+ (verbose output) можно получить более подробную информацию об ошибке:

convertword
/v+>errors.txt

Ключ /v- не выдает номеров ошибок; вместо этого имя файла просто пересылается в StdErr, чтобы облегчить последующую обработку.

Последняя ошибка, обнаруженная ConvertWord, всегда принимается в качестве окончательного уровня ошибки; после завершения работы сценария это значение доступно в командной среде и может быть прочитано другим сценарием, который определит, был ли вызов ConvertWord успешным или закончился неудачей.

Чтобы обнаружить потенциальные ошибки, не преобразуя документы, можно запустить ConvertWord с ключом /w (what if - что, если). Этот ключ заставляет ConvertWord открыть все документы, не сохраняя их. Если в каких-нибудь файлах происходят сбои, например искажаются внутренние данные, то будет выдано обычное сообщение об ошибке.

Решение проблемы паролей

Пароли доставляют особенно много проблем при групповой обработке, поскольку они могут быть для разных документов различными. По умолчанию ConvertWord использует символ «пробел» в качестве пароля, который открывает все документы, не имеющие паролей, а документы с паролями генерируют ошибку, которая не останавливает дальнейшую обработку.

Такое поведение можно изменить с помощью ключа /p (password). Если указать пустой аргумент (например, /p:»»), то Word просит ввести пароль для всех защищенных документов. С ключом /p можно указать конкретный пароль. Однако при этом открыть документы без пароля или с паролем, отличным от указанного, не удастся.

Практическое применение ConvertWord

Я провел приблизительно 30 тыс. преобразований с использованием ConvertWord и обнаружил несколько типичных проблем. Необычные сбои почти неизменно были вызваны ошибками автоматизации Word; номер ошибки и сообщение в большинстве случаев исходили от Word. Большинство ошибок (например, неверный пароль) нетрудно устранить или понять. Следующие три ошибки повторялись достаточно регулярно.

Первая из них - всплывающее диалоговое окно Word для документов, содержащих макрокоманды. По умолчанию ConvertWord блокирует макрокоманды в документах, чтобы защитить пользователя от опасного программного кода. Однако, когда Word открывает документы, содержащие макрокоманды, на экран выводится диалоговое окно с сообщением о блокировании макрокоманд. Единственный известный мне способ устранить это окно - разрешить выполнение макрокоманд. Сделать это можно, запустив ConvertWord и указав ключ /as (automation security - безопасная автоматизация) со значением 0 (/as:0). Это стандартное значение для программно открываемых документов Word. Перед использованием ключа /as необходимо убедиться, что открываемый документ не содержит опасного программного кода.

Вторая ошибка связана с некоторыми документами RTF, которые не удается успешно открыть, но которые тем не менее корректно отображаются в WordPad. Обычно они неверно отформатированы и не могут быть корректно открыты в Word. ConvertWord не в состоянии устранить данную проблему, поэтому для преобразования таких файлов ConvertWord применять нельзя.

Третья ошибка происходит потому, что Word идентифицирует текстовые документы Unicode по начальной отметке Byte Order Mark в файле. Если отметка отсутствует, то Word рассматривает документ как простой текст, и при открывании преобразованного документа пользователь увидит пустоты после каждого видимого символа (в действительности пустоты соответствуют нулевым символам). Единственный способ решить проблему - преобразовать файлы с ключом /oa (OpenAs), настроенным на текст Encoded или Unicode (/oa:5 для Word 97 и более поздних версий).

К счастью, такие ошибки происходят сравнительно нечасто. ConvertWord будет чрезвычайно полезен для обработки большого числа документов и поможет открыть и преобразовать документы Word без утомительной работы вручную.

Специалист по сетям, консультирующий в Индиане. Имеет сертификаты MCSE, MCP+I и MVP.