Совместимость программ. Включение режима совместимости в Windows7 seven Windows xp совместимая с 7

В двух предыдущих выпусках журнала (TechNet зафевраль 2010 г. и март 2010 г.) обсуждалось, как можно легко использовать службы удаленного рабочего стола (Remote Desktop Services, RDS) или размещенные в Hyper-V виртуальные рабочие столы для создания инфраструктуры удаленных приложений. В такой среде пользователи подключаются к отдельным приложениями или целым рабочим столам, размещенными на корпоративном сервере. Поскольку приложения являются удаленными, то пока у пользователей есть доступ к сети (или даже к Интернету), совершенно неважно, где физически находятся эти пользователи. Подключенным пользователи достаточно нескольких движений мышью, чтобы получить доступ к нужным им инструментам.

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

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

  • Приложение А без проблем работает в Windows XP или Windows 7, но администрирование его многочисленных конфигураций и стандартных обновлений - настоящий кошмар. Вместе с тем, приложение А прекрасно работает в среде Windows Server 2008.
  • Приложение B работает в Windows XP, но не в Windows 7. Эта довольно нересурсоемкая программа и используется небольшим числом пользователей.
  • У приложения C также проблемы с совместимостью с Windows 7, но, в отличие от приложения B, ему нужны значительные ресурсы, при этом приложение C нужно только одному или двум пользователям.

Каждое из этих приложений требует различного подхода к поставке пользователям. С приложением А должно быть просто. Поскольку оно работает на Windows Server 2008, то немедленно становится кандидатом на размещение средствами RDS. А многочисленные конфигурации и частые обновления позволяют за раз установить все конфигурации на сервер RDS, что позволит каждому пользователю получить нужное приложение, а нагрузка на администраторов снизится.

Разобраться с приложениями B и C будет немного труднее. Они не совместимы с Windows 7, поэтому не будут работать в Windows Server 2008. Как говорилось, приложение B нужно небольшому числу пользователей и оно относительно нересурсоемкое. Это позволяет разместить его в пуле виртуальных рабочих столов, обслуживаемых Hyper-V и RDS.

У приложения C большая потребность в ресурсах, что ограничивает число одновременно используемых виртуальных рабочих столов, которые можно разместить на одном сервере Hyper-V. Поскольку это приложение необходимо только одному-двум пользователям, оно становится хорошим кандидатом для размещения в режиме совместимости с Windows XP.

Как?

Конечно, оптимальный вариант - ограничение числа приложений, которым нужен режим совместимости с Windows XP. Это связано с недостатком инструментальных средств для автоматизации и централизованного управления службами и виртуальными машинами этого режима. Режим совместимости с Windows XP предназначен для решения проблем к ограниченным использованием только в средах малого и среднего размеров.

Развертывание файлов виртуальной машины на диске клиентов требует выполнения ручных операций или решений на основе сценариев. Нет инструментов централизованного управления параметрами или политиками режима совместимости. Придется вручную устанавливать приложения и исправления на каждый экземпляр виртуальных машин режима совместимости с Windows XP или задействовать специализированные средства, такие как Windows Server Update Services или System Center Essentials.

Также потребуется установить и управлять средствами защиты на клиентах, такими как брандмауэр и антивирусное ПО, на каждой виртуальной машине режима совместимости с Windows XP, а также на самих клиентских машинах, что удвоит нагрузку на администратора. Также следует не забывать, что режим совместимости с Windows XP не поддерживает приложения с трехмерной графикой. И, если среда требует значительной автоматизации или содержит широко распространенные приложения, следует подумать об использовании средства Microsoft Enterprise Desktop Virtualization (MED-V), которое доступно предприятиям только в составе пакета Microsoft Desktop Optimization Pack (MDOP).

У режима совместимости с Windows XP также серьезные требования к оборудованию: компьютер должен поддерживать аппаратную виртуализацию (что можно проверить средствами Microsoft HAV Detection Tool), процессорных ресурсов и оперативной памяти должно быть достаточно для одновременной поддержки основной машины и ее вторичного виртуального образа, и, хотя формально 64-разрядная ОС не требуется, зачастую без этого не удается обойти ограничения на объем оперативной памяти, свойственные 32-разрядным операционным системам Microsoft.

Также могут возникнуть сложности - все зависит планирования создания виртуальных машин в режиме совместимости с Windows XP. При каждой установке режима совместимости с Windows XP виртуальная машина с Windows XP развертывается как VHD-файл. Лицензия на Windows 7 основного компьютера предоставляет пользователю неограниченный доступ к этой виртуальной машине, но только к ней. Можно создать собственную нестандартную виртуальную машину для режима совместимости с Windows XP, но тогда придется потратиться на дополнительную лицензию.

При установке режима совместимости с Windows XP придется установить Windows Virtual PC. Все это можно найти на странице загрузки Windows Virtual PC. Там же есть отдельные ссылки для этих двух компонентов, причем предлагается сначала установить режим совместимости с Windows XP.

Установив оба компонента, откройте Пуск (Start) и запустите Windows XP Mode из папки Windows Virtual PC. При первом запуске режима совместимости с Windows XP предлагается указать папку для установки, а также имя пользователя и пароль учетной записи XPMUser (см. рисунок). Это локальная учетная запись в основной ОС, являющаяся членом группы локальных администраторов. Она будет использоваться для запуска приложений в режиме Windows XP из основной ОС.


По завершении мастера установки гостевая ОС по умолчанию будет запущена и произойдет вход в систему. Окно впервые запущенной гостевой ОС показано на рисунке. Машине присваивается имя в формате \\\\VirtualXP- xxxxx , где xxxxx - случайный набор чисел Она состоит членом рабочей группы, но ее можно присоединить к домену, если требуется контекст доменной учетной записи.


Теперь мы готовы к заключительному шагу - установке приложения в гостевую ОС. Это можно сделать как вручную, так и используя решение развертывания приложений. Установленное для работы в режиме совместимости с Windows XP гостевое приложение можно запустить автоматически из меню "Пуск" основной машины (рис. 3 ).

Чтобы использовать интеграцию запуска, перед запуском гостевой виртуальной машины из меню Пуск основного компьютера нужно выйти из системы гостевой виртуальной машины и закрыть ее. Есть другой вариант: пользователи могут работать с полным рабочим столом гостевой виртуальной машины, щелкнув ссылку с отметкой Windows XP Mode. Если гостевая виртуальная машина не используется, она переходит в спящий режим, что сокращает время повторного ее запуска, когда она понадобится снова.

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

Совместимость старых программ с Windows 7

Решение проблем совместимости программ

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

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

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

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

Активизация Помощника по совместимости

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

Следуя инструкциям мастера, укажите проблемную программу и то, каким способом следует провести ее диагностику.

Одной из причин несовместимости приложения может быть попытка старой программы запуститься с правами администратора (обратиться к системным папкам и областям реестра), что в Windows 7 недопустимо при включенном контроле учетных записей пользователей (о нем мы будем говорить в одной из следующих глав). Отныне в целях безопасности системы все программы запускаются с правами обычного пользователя. Поскольку в предыдущих версиях Windows подобные ограничения отсутствовали, в седьмой версии при открытии приложения может возникнуть «правовой» конфликт: старая программа не сможет работать в обычном режиме пользователя. Windows 7 позволяет обойти это ограничение путем запуска проблемного приложения с правами администратора.

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

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

Любимые игры и привычные программы не заменить новыми. Когда Майкрософт выпускает новую ОС, совместимость программ из предыдущих - функция, о которой разработчики думают в первую очередь. Но иногда попытка запустить старую приводит к ошибке. Неужели работники Microsoft так невнимательно относятся к своей работе?

Нет, дело в том, что для устаревшего ПО рекомендуется включить режим совместимости, который по умолчанию не работает на 100%

Как запустить старое ПО на новой ОС

Несмотря на многочисленные изменения в Виндоуз 8.1 и 10 они поддерживают программы для XP и 7 за редким исключением. Проблемы совместимости Windows 8 встречаются, но это 1 случай из 100. Происходит подобное с приложениями для XP и ОС, выпущенных ранее. Встречающаяся проблема - невозможность запуска старенькой игры.

Что такое режим совместимости? Если ПО или 3D-игрушка делались для win2000, то на «Висте» она наверняка не заработает. Дело в различающихся структурах ОС. ПО создается для работы в конкретной среде. Попадая в незнакомую, оно не запускается или функционирует с ошибками. Совместимость Windows - способ «подсунуть» приложению данные старой ОС, которые присутствуют в новой. Но иногда необходимость запуска такого функционала необоснованна.

Разрабатываемое программное обеспечение регулярно получает новые установщики. Нет смысла запускать на восьмерке или десятке старый антивирус, когда он уже 10 раз обновился. Поэтому сначала проверьте, нет ли нового «билда». Исключение составляют программы, в прошлых выпусках которых остались полезные функции, по некоторым причинам не реализованные в обновлениях. Чтобы старое приложение в новой ОС работала корректно и без сбоев рекомендуется поставить режим совместимости. Это не особая программа для запуска старых игр или ПО: все реализуется стандартными средствами Виндоуз.

Устаревшие программы и игры в «восьмерке» (или 8.1)

Как сделать совместимость игры с Windows 8? У вас завалялась ретроигра или старая программа, не имеющая достойных аналогов, но она не запускается или «глючит» на «восьмерке»? Запуск старых игр на Windows 7 или 8 можно сделать стабильным. Для этого нажмите по ярлыку правой кнопкой и вызовите контекстное меню. Обратите внимание на пункт «Свойства». Запустите и выберите вкладку «Совместимость».

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

Запуск старых программ на Windows 7 будет проще, если вы знаете наверняка, для какой ОС выпущена ваша игра, то для параметра «Запуск программы в режиме совместимости с...» выберите данную операционку. По статистике, 90% конфликтных с Виндоуз 8 и 8.1 приложений без проблем работают в совместимости с XP пакет обновления 2 или 3. Выберите желаемый вариант, нажмите «Применить» и «ОК». Если с первого раза «не завелось», пробуйте другие варианты, не забывая нажимать на кнопку «Применить».

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

  1. режим пониженной цветности;
  2. понижение разрешения дисплея;
  3. отключение масштабирования изображения для современных экранов.

Понижение цветности

Игры и приложения для устаревших ОС создавались для запуска на компьютерах, мониторы которых отличались разрешением изображения 640X480 или 800X600 точек. Современные видеокарты и мониторы предлагают разрешение до 2000—3000 точек. Необходимо настроить параметры просмотра в режиме совместимости. Запускать такое ПО рекомендуется цветности. Активировав режим, вы запустите программу с разрешением, для которого она предназначена. Во вкладке «Совместимость» установите галочку напротив соответствующего пункта и выберите подходящий вариант цветности - 8 или 16 бит.

Использование другого разрешения экрана

Старые игры создавались для экранов с разрешением 640X480. Такое разрешение в современных моделях мониторов поддерживается, но не используется. Иногда проблема совместимости Windows 7 кроется как раз в растянутом изображении.

Для запуска старых игр в новой ОС, примените параметр «Использовать разрешение экрана 640X480»

Отключение масштабирования картинки

Если компьютерная программа или видеоигра предназначались к запуску на мониторах 10-20 летней давности, на новых дисплеях они искажаются - изображение растягивается и размазывается. Чтобы подобного не происходило, установите галочку напротив пункта «Отключить масштабирование изображения...». Теперь картинка выглядит корректно.

Бывает ли полностью несовместимое приложение Windows 7 Не часто. Не рекомендуется задействовать режим совместимости для таких приложений:

  1. антивирусы;
  2. чистильщики мусора;
  3. утилиты для жесткого диска;
  4. твикеры.

Это риск нарушения стабильности работы ОС.

Автоматическое применение параметров

В Виндовс присутствует специальное ПО, определяющее подходящий режим корректного запуска для устаревших приложений и игр. Это хорошая проверка совместимости с Windows 7, 8 или 10. Для запуска используйте контекстное меню файла-установщика. В верхней части кликните по строке «Исправление проблем с совместимостью».

Откроется новое окошко, где предлагается два варианта: использование рекомендуемых параметров и диагностика

Первый пункт подходит. Выберите: откроется новое окно, в котором отображены предлагаемые параметры для корректного запуска для программы. Пункт «Проверить программу» поможет испытать предложенные параметры в деле. Нажав на кнопку, вы запустите приложение с этими параметрами. Если ОК, сохраните результат. Теперь приложение автоматически запускается как надо, с необходимыми опциями.

Пункт диагностики помогает подобрать опции для корректного запуска, опираясь на неполадки в работе приложения.

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

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

  • Нажмите на «Пуск».
  • В поле «Выполнить» впишите cmd и нажмите на Enter.
  • В открывшемся окне командной строки введите regedit и Enter.
Запустится редактор реестра, найдите ветку HKEY_CURRENT_USER\ Software\ Microsoft\ Windows NT\ CurrentVersion\ AppCompatFlags\ Layers
  • На пустом пространстве правой половины окошка кликните правой кнопкой и выберите «Создать».
  • Здесь выберите создание «Строкового параметра».
  • Имя параметра - полный путь до исполнительного файла программы, для которой вы настраиваете совместимость с Виндовс 7, например.
  • Теперь нажмите по имени параметра правой кнопкой и откройте «Изменить».
  • В строке «Значение» пропишите один вариант из предложенных:
  1. WIN7RTM - для установки совместимости с «семеркой»;
  2. VISTARTM - для «висты»;
  3. VISTASP1 - «висты» с пакетом обновления 1;
  4. VISTASP2 - «висты» с пакетом обновления 2;
  5. WINXPSP2 - для «экс пи» с пакетом обновления 2;
  6. WINXPSP3 - «экс пи» с пакетом обновления 3;
  7. WIN2000 - для Виндоуз 2000;
  8. NT4SP5 - для Виндоуз NT чевертой версии;
  9. WIN98 - для Виндоуз 98;
  10. WIN95 - Виндоуз 95.
  • Вы намереваетесь открывать программу в режиме совместимости с админскими правами? После выбранного варианта выше добавьте слово RUNASADMIN (разделите пробелом).
  • Теперь найдите ветку HKEY_LOCAL_MACHINE \ Software \ Microsoft \ Windows NT \ CurrentVersion \ AppCompatFlags \ Layers.
  • Повторите этапы 5 - 10 для этой ветки.
  • Произведите сохранение и выполните перезагрузку компьютера.

Теперь вы знаете, как включить режим совместимости на Windows7, 8 10.

ПОСМОТРЕТЬ ВИДЕО

Если компьютером пользуются двое-трое или другое количество пользователей под отдельными учетными записями, рекомендуется применить параметры совместимости программ для «учеток». В противном случае, загрузившись под другим логином, придется настраивать с нуля. Чтобы это сделать, зайдите в ОС под администраторской учетной записью. Применяя режим совместимости первым методоом (в меню ярлыка), примените пункт «Изменить параметры для всех пользователей». Теперь программа запускается с одинаковыми характеристиками на всех учетных записях.

Юзеры сталкиваются со случаями, когда устаревшее ПО не запускается после проделанных манипуляций и никакая программа для совместимости игр на Widows 7 не помогает. Но это не означает, что шансов воспользоваться «доисторической» программой или поиграть в ретроигру не осталось. Что делать? Ответ - ! Это программа, создающая среду для запуска ОС внутри ОС. На Виндоуз 10 получится запустить Виндоуз 2000 или XP и в виртуальной машине установить интересующее приложение или игрушку в родной среде. Пример виртуальной машины - программа Virtualbox. Такой метод надежен и гарантирует полную совместимость. Для беспроблемной работы виртуальной машины нужен ПК с продвинутыми техническими характеристиками.

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

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

Совместимость программ

Совместимость программ - это режим Windows, который позволяет выполнять программы, написанные для более ранних версий Windows

Примечания

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

Следуйте указаниям в средстве устранения проблем. Если не удается установить программу, вставьте ее установочный диск и с помощью данного средства найдите файл установки программы, обычно Setup.exe, Install.exe и т.п. Средство устранения проблем не поддерживает работу с программами, имеющими расширение имени файла MSI

Изменение параметров совместимости вручную

Чтобы изменить параметры совместимости для программы вручную, щелкните значок программы правой кнопкой мыши, выберите команду Свойства и затем вкладку Совместимость

Справка по выбору параметров

Запуск программ с параметрами предыдущей версии Windows. Включите данный параметр, если известно, что программа предназначена для той или иной предыдущей версииWindows (или работала в ней).

Запуск в режиме 256 цветов - Ограничение набора цветов в программе. Некоторые старые программы используют ограниченный набор цветов.

Использовать разрешение экрана 640 ? 480 - Запуск программы в уменьшенном окне. Включите этот параметр, если графический интерфейс пользователя имеет неровный контур или воспроизводится неверно

Отключение визуальных тем оформления - Отключение тем оформления в программе. Включите этот параметр при наличии проблем с меню или кнопками в строке заголовка программы.

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

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

Уровень прав - Запуск программы от имени администратора. Для правильной работы некоторых программ необходимы права администратора. Данный параметр доступен только при входе в систему с учетной записью администратора.

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


Совместимость существующих приложений с операционной системой Microsoft Windows Vista (и выходящей в этом году операционной системой Windows 7, построенной на ядре Windows Vista) является одной из основных проблем, с которой могут столкнуться пользователи, переходящие на новую версию операционной системы. Несмотря на усилия, прилагаемые компанией Microsoft, некоторые производители программного обеспечения продолжают использовать устаревшие функции операционной системы, некорректно выполняют операции по проверке версий ОС (более 50% всех отказов в запуске приложений), не следуют рекомендациям по работе с файловой системой и, часто, не руководствуются советами по обеспечению корректной работы приложений в новых версиях системы. Все это приводит к тому, что в операционной системе Microsoft Windows Vista есть более 5600 «системных заплаток» (shims) для обеспечения корректной работы приложений различных производителей – от утилит китайских производителей до крупных продуктов известных фирм. В Windows 7 число «системных заплаток» увеличилось – в бета-версии новой операционной системы их насчитывается более 5700!

Можно выделить три основных подхода к обеспечению совместимости приложений – использование упомянутых выше «системных заплаток», запуск приложения в виртуальной среде (терминальные сервисы или использование Microsoft Application Virtualization) и, изменение кода приложения таким образом, чтобы оно соответствовало требованиям по корректной работе в операционной системе – для этого служат руководства по сертификации приложений для получения логотипов Works With Windows Vista и Certified for Windows Vista, а также соответствующие тест-кейсы, которые можно найти на сайте в разделе, посвященном Windows Vista.

Описанные выше ключевые причины несовместимости приложений вынудили компанию Microsoft реализовать на уровне ядра операционной системы специальный механизм, известный под названием Application Compatibility Infrastructure , в задачу которого входит имитация функционирования ОС в режиме совместимости с предыдущими версиями и, в ряде случаев, даже внесение ошибок, на наличие которых завязана функциональность приложений сторонних разработчиков – даже в том случае, когда эти ошибки обнаружены и устранены в текущей версии ОС.

Средства обеспечения совместимости можно условно разделить на три уровня: средства операционной системы, набор бесплатных утилит, «заплатки», создаваемые специалистами Microsoft.

Средства операционной системы

На уровне операционной системы (как Windows Vista, так и Windows 7) существет механизм, позволяющий выполнять приложения в режиме совместимости. В Windows Vista и Windows 7 этот механизм доступен при нажатии правой кнопки «мыши» на названии исполняемого файла, выборе команды «Свойства» и переключении на вкладку «Совместимость» в диалоговой панели «Свойства» .

Вкладка «Совместимость» панели «Свойства»

Панель разделена на 3 группы – «Режим совместимости», «Параметры» и «Уровень прав». Опции в группе «Режим совместимости» позволяют запустить приложение в режиме совместимости с одной из следующих версий операционной системы Windows:

  • Windows 95; Windows 98/Me; Windows NT4 (SP5); Windows 2000; Windows XP (SP2); Windows Server 2003 (SP1)

При выборе режима совместимости для приложения включается набор системных «заплаток», которые эмулируют выбранную версию операцинной системы.

Опции в группе «Параметры» позволяют, не изменяя самой среды выполнения, задать некоторые режимы, которые помогут функционированию приложения – число цветов, разрешение экрана, масштабирование в режиме HiDPI и т.д.

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

Все изменения, внесенные в данной диалоговой панели, хранятся в системном реестре – в ветви HKEY_CURRENT_USERSoftwareMicrosoftWindows NTCurrent VersionAppCompatFlagsLayers

В приведенном выше примере мы использовали два средства обеспечения совместимости – т.н. «уровень совместимости» - в нашем случае и Windows XP SP2 – и две системные «заплатки» - DisableThemes и RunAsAdmin .

В Windows 7 появился более простой интефейс, позволяющий включать механизмы обеспечения совместимости приложений с текущей версией операционной системы. Данный интерфейс называется Program Compatibility Troubleshooter – он вызывается через Control Panel | Troubleshooting | Programs | Run programs made for previous versions of Windows или из командной строки командой

%systemroot%/system32/msdt.exe –id PCWDiagnostic

При вызове Program Compatibility Troubleshooter мы попадаем в набор экранов, которые позволяют нам либо выбрать приложение из списка, либо указать новое приложение и, ответив на ряд вопросов, попытаться решить проблемы, связанные с совместимостью.

Program Compatibility Troubleshooter – выбор приложения

Program Compatibility Troubleshooter – категории проблем

Program Compatibility Troubleshooter – выбор версии ОС

Program Compatibility Troubleshooter – тестирование приложения

Program Compatibility Troubleshooter – применение настроек

Как видно из приведенных выше иллюстраций, Program Compatibility Troubleshooter позволяет не только выбрать определенные настройки, но и проверить работоспособность приложения и, при необходимости, вернуться в панель настроек – в этом основное отличие данного средства от непосредственного использования панели «Совместимость» в Windows Vista.

Многие проблемы, связанные с совместимостью приложений могут быть решены применением настроек на уровне панели «Совместимость» в Windows Vista или средства Program Compatibility Troubleshooter в Windows 7, но в ряде случаев может потребоваться «тяжелая артилерия».

Продолжение следует...