Глава 4. Совместимость приложений с Windows 7

В операционной системе Windows Vista® было произведено немало существенных изменений в части обработки обращений программ к режиму ядра, что сделало эту ОС более безопасной, чем Windows® XP. Однако, эти изменения привели к проблемам совместимости приложений, для разрешения которых многие программы требовалось исправить.

Модель приложений Windows® 7 основана на той же базовой архитектуре, что и в Windows Vista. Большинство программ, совместимых с одной, совместимы и с другой. Благодаря одному этому внедрение Windows 7 проходит легче, чем переход с Windows XP на Windows Vista. Если в вашем предприятии, как и многих других, за стандарт принята Windows XP, вам, возможно, потребуется перейти на обновленные версии ключевых приложений. Широкая доступность версий, совместимых с Windows Vista, а также проверенные способы обеспечения совместимости сделают эту задачу более легкой.

Однако, существует вероятность, что более старые приложения не смогут корректно работать с новыми технологиями обеспечения безопасности ОС Windows 7, например контролем учетных записей (UAC) или защитой ресурсов Windows (WRP).

В наборе средств Microsoft Deployment Toolkit (MDT) 2010 содержится исчерпывающее руководство по обеспечению совместимости приложений, с помощью которого можно установить возможные проблемы совместимости в ОС Windows 7 и устранить их. Подробнее об этом см. Руководство для группы обеспечения совместимости приложений.

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

Тестирование совместимости приложений

В этом разделе освещается тестирование степени совместимости приложений с ОС Windows 7. В ней описаны два сценария, по которым может производиться тестирование. Сценарии предназначены для тестирования приложения на компьютере с Windows 7.

Тестирование приложения на компьютере с Windows 7

   1.  Установите на компьютер Windows 7 и войдите в систему от имени администратора.

   2.  Установите тестируемое приложение. Если при установке появится запрос на подтверждение, нажмите кнопку Permit (разрешить), чтобы продолжить. Если установка завершилась успешно, переходите к шагу 6.

Примечание   Этот шаг необязателен, если для установки приложения используется MSI-файл.

Внимание!   Если установщик программы предлагает сразу же запустить ее, откажитесь, поскольку иначе приложение запустится с теми же повышенными правами, что использовались для установки.

   3.  Если установка завершается неудачей, и при этом запроса на подтверждение не выдается, щелкните правой кнопкой EXE-файл установщика и выберите команду Run this program as administrator (запустить от имени администратора), после чего повторите установку. Если установка завершилась успешно, переходите к шагу 7.

   4.  Если происходят ошибки, связанные с версией операционной системы, регистрацией приложения или копированием файлов, щелкните правой кнопкой мыши EXE-файл установщика, выберите пункт Compatibility (совместимость) и укажите режим совместимости Windows XP Professional SP3.

   5.  Повторите шаг 2. Если приложение все равно не устанавливается, переходите к шагу 8.

   6.  Войдите в систему от имени пользователя, не обладающего административными привилегиями.

   7.  Запустите приложение. Если приложение не запускается как нужно или происходят ошибки, включите режим совместимости Windows XP Professional SP3 для EXE-файла приложения, после чего попытайтесь запустить его снова.

   8.  Если приложение запускается успешно, проведите полный набор тестов, который вы обычно используете на компьютерах с ОС Windows XP с пакетом обновления 3 (SP3). Если основные тесты функциональности проходят успешно, приложение будет нормально работать в Windows 7.

   9.  Если приложение не устанавливается, не запускается, перестает отвечать, выдает ошибки или не может пройти какие-либо из основных тестов функциональности, оно может иметь проблемы с совместимостью в ОС Windows 7. Для дальнейшего изучения ситуации обратитесь к другим ресурсам данной главы.

Если, выполнив эти шаги, вы установили, что приложение работает нормально, можно заключить, что оно совместимо с Windows 7.

Известные проблемы совместимости приложений

В этом разделе описаны технологии, изменения и улучшения ОС Windows 7, которые часто вызывают проблемы совместимости приложений. Где это возможно, приведены и вероятные способы их устранения.

Важно   Все приложения сторонних поставщиков необходимо протестировать на совместимость с Windows 7, чтобы убедиться в их корректной работе под управлением этой ОС.

Улучшения безопасности

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

   •  Контроль учетных записей. Эта технология в ОС Windows Vista и Windows 7 позволяет отделить задачи и привилегии обычного пользователя от таковых у администратора. Контроль учетных записей (UAC) повышает защиту компьютера, давая пользователям возможность удобно работать с обычными правами. Они могут выполнять больше задач и испытывать меньше проблем с совместимостью приложений, не обладая при этом административными привилегиями. Это позволяет снизить риски, исходящие от заражения вредоносными программами, неразрешенной установки программ и несанкционированных изменений системы.

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

   •  Защита ресурсов Windows. Впервые появившись в ОС Windows Vista под названием «Защита файлов Windows», технология защиты ресурсов Windows теперь охраняет не только ключевые системные файлы, но и папки, и разделы реестра. Ее задача — обеспечить большую стабильность и безопасность работы операционной системы. Приложения, которые пытаются внести изменения в эти охраняемые участки, могут некорректно работать в Windows 7. В таких случаях приложение нужно исправить, чтобы оно работало как задумано. Подробнее об этой технологии и ее влиянии на совместимость приложений см. «О защите ресурсов Windows» в MSDN®.

   •  Защищенный режим. Эта способность обозревателя Windows® Internet Explorer® 7 и более поздних версий позволяет защитить компьютеры с ОС Windows от установки вредоносных программ за счет работы с пониженными привилегиями. Когда обозреватель находится в защищенной режиме, он может взаимодействовать только с отдельными частями файловой системы и реестра.

Хотя защищенный режим способствует сохранению целостности компьютеров под управлением Windows, он может препятствовать нормальной работе более старых веб- и интранет-приложений. Такие приложения может потребоваться изменить под работу в более ограниченной среде. По умолчанию в Internet Explorer® 8 защищенный режим не применяется при работе с веб-сайтами из доверенной зоны и зоны интранета.

Изменения и инновации операционной системы

Нижеперечисленные изменения и инновации в ОС Windows 7 могут вызывать проблемы совместимости со сторонними приложениями.

   •  Новые API-интерфейсы. Программные интерфейсы для приложений (API) представляют компоненты ОС Windows Vista с пакетом обновления 1 (SP1) иначе, чем это было раньше. Такие интерфейсы требуются, например, антивирусным программам и брандмауэрам, чтобы они могли обеспечивать надлежащий мониторинг и защиту Windows Vista и Windows 7. Для устранения возможных проблем следует обновить эти приложения до версий, совместимых с Windows Vista SP1.

   •  64-разрядная Windows 7. 16-разрядные приложения и 32-разрядные драйверы не поддерживаются в 64-разрядной среде Windows. Автоматическое перенаправление при работе с реестром и файловой системой используется только для 32-разрядных приложений. Поэтому любые 64-разрядные приложения должны полностью соответствовать стандартам Windows 7 и Windows Vista.

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

Большинство проблем совместимости, связанных с требованиями к версии операционной системы, решаются с помощью новых средств, встроенных в Windows 7. Такие компоненты, как помощник по совместимости программ, обычно способны справиться с ними автоматически. Подробнее о помощнике по совместимости программ и других средствах рассказано далее в этой главе.

Дополнительную информацию об этих изменениях и улучшениях в ОС Windows 7 см. в разделе MSDN «Windows 7 and Windows Server 2008 R2 Application Quality Cookbook». Там также приведены способы возможные обнаружения и устранения большинства таких неполадок.

Средства и ресурсы

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

Помощник по совместимости программ

Этот компонент автоматически назначает подходящий режим совместимости приложению, разработанному для предыдущей версии Windows®. Когда Windows 7 обнаруживает программу, которой необходим режим совместимости с Windows 2000, Windows XP Professional с пакетом обновления 3 (SP3) или более поздними версиями, она автоматически производит нужные изменения, чтобы программа в дальнейшем корректно работала в Windows 7.

Подробнее см. «Помощник по совместимости программ: вопросы и ответы» на веб-сайте Windows Help and Support.

Мастер совместимости программ

Мастер совместимости программ из состава Windows 7 предназначен для разрешения проблем с приложениями, написанными для предыдущих версий Windows. Он позволяет указать для программы параметры совместимости, что часто устраняет неполадки.

Чтобы запустить мастер совместимости программ, нажмите кнопку Start (пуск), щелкните Control Panel (панель управления), затем Programs (программы) и, наконец, Use an older program with this version of Windows (использование старых программ с этой версией Windows).

Подробнее см. «Запуск старых программ в данной версии Windows» на веб-сайте Windows Vista Help and Support.

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

Набор средств для обеспечения совместимости приложений

Корпорацией Майкрософт выпущен комплект инструментов и документации по управлению приложениями, используемыми в организации, а именно набор средств для обеспечения совместимости приложений (ACT) версии 5.5, который позволяет сократить затраты времени и ресурсов на разрешение проблем совместимости приложений и быстрее развернуть ОС Windows 7.

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

С помощью набора средств для обеспечения совместимости программ можно:

  • проверить совместимость приложений с новой версии ОС Windows и службами Windows Update, а также провести оценку рисков;
  • вступить в сообщество ACT Community, представив другим пользователям свою оценку рисков;
  • протестировать веб-приложения и веб-сайты на совместимость с новыми выпусками и обновлениями безопасности обозревателя Internet Explorer.

Подробнее об этом наборе средств см. «Набор средств для обеспечения совместимости приложений (ACT) версии 5.5».

Режим Windows XP

Если с помощью набора средств для обеспечения совместимости или иных инструментов не удается обеспечить нормальную работу приложения в ОС Windows 7, можно прибегнуть к иному варианту — режиму Windows XP. Он позволяет устанавливать и без проблем запускать приложения Windows XP прямо из ОС Windows 7. При этом используется технология виртуализации Windows Virtual PC, создающая для приложения виртуальную среду Windows XP. После установки приложения оно запускается как обычно прямо с рабочего стола Windows 7. Пользователю даже не требуется знать, что на самом деле программа работает в виртуальной машине Windows XP.

Режим Windows XP можно загрузить отдельно для редакций Professional (профессиональная), Ultimate (максимальная) и Enterprise (корпоративная) операционной системы Windows 7. Он представляет из себя 32-разрядную среду Windows XP Professional SP3, помещенную на виртуальный жесткий диск. Хотя этот режим и позволяет полностью решить любые проблемы совместимости, он также означает, что теперь операционных систем будет две, и вторая тоже требует настройки в соответствии с требуемым уровнем безопасности. По умолчанию виртуальная машина Windows XP настроена на использование общей сети, или NAT. Преимущество такого варианта в том, что незапрошенный сетевой трафик никогда не сможет попасть в виртуальную машину, но при этом меняется и способ, которым обозреватель Internet Explorer автоматически обнаруживает расположение веб-серверов. Работая в режиме Windows XP, Internet Explorer, обращаясь к веб-сайтам через NAT, может отнести ряд внешних веб-сайтов к зоне «Интернет», поэтому необходимо ограничить параметры этой зоны до соответствия параметрам зоны «Ограниченные узлы». После этого доверенные веб-сайты можно добавить в зону «Надежные узлы». Чтобы начать использование режима Windows XP, загрузите его с веб-страницы «Режим Windows XP и Windows Virtual PC». Подробнее о параметрах, которые позволяют усилить безопасность Windows XP, см. Руководство по безопасности Windows XP. Это руководство входит в состав набора средств по управлению соответствием требованиям безопасности для Windows XP.

Дополнительные сведения

Подробнее о вопросах совместимости программ с Windows 7 можно узнать из следующих источников на Microsoft.com.

   •  О защите ресурсов Windows.

   •  Руководство для группы обеспечения совместимости приложений.

   •  Совместимость приложений и контроль учетных записей.

   •  Введение в API защищенного режима.

   •  «Запуск старых программ в данной версии Windows» на веб-сайте Windows Vista Help and Support.

   •  Набор средств для обеспечения совместимости приложений (ACT) версии 5.5.

   •  Microsoft Deployment Toolkit (MDT) 2010 .

   •  Microsoft Solution Accelerator for Business Desktop Deployment 2007 .

   •  Microsoft Virtualization.

   •  Помощник по совместимости программ: вопросы и ответы.

   •  Технический обзор служб терминалов Windows Server 2003.

   •  Службы терминалов в Windows Server® 2008.

   •  The Windows Vista and Windows Server 2008 Developer Story: Application Compatibility Cookbook .

   •  Windows 7 and Windows Server 2008 R2 Application Quality Cookbook .

   •  Помощник по обновлению Windows 7.

   •  Режим Windows XP и Windows Virtual PC.

   •  Набор средств по управлению соответствием требованиям безопасности для Windows XP.

Обратная связь

Вопросы и комментарии по поводу этого руководства направляйте на адрес secwish@microsoft.com.