Windows Vista. Для профессионалов
Шрифт:
Однако, если вы все-таки столкнулись с ситуацией, когда какая-то программа не хочет работать в новой операционной системе, не стоит сразу отчаиваться. Операционная система Windows Vista, как и предыдущие версии операционной системы Windows, содержит в своей стандартной поставке компонент, с помощью которого можно для конкретной программы эмулировать условия запуска под операционной системой Windows любой версии, более старой, чем Windows Vista.
Для этого можно воспользоваться как минимум двумя способами.
Первым и самым быстрым способом является использование вкладки Совместимость окна Свойства. Данная вкладка есть во всех окнах Свойства, принадлежащих исполняемым файлам или ярлыкам на них. Ее изображение представлено на рис. 7.9.
Рис. 7.9. Вкладка Совместимость
Вкладка Совместимость содержит следующие области.
• Режим совместимости – именно с помощью флажка данной области можно активировать режим совместимости для конкретной программы. После этого в раскрывающемся
• Параметры – позволяет указать дополнительные параметры запуска программы в совместимом режиме. К ним относятся возможность запуска программы с использованием разрешения экрана 640 х 480, запуск в 256-цветном режиме, запуск с отключенными визуальными темами или с отключенными настройками DPI.
• Уровень прав – с помощью флажка данной области можно указать, что программа для данного пользователя должна запускаться с правами администратора.
Кнопка Параметры для всех пользователей позволяет отобразить вкладку Совместимость, с помощью которой можно настроить параметры запуска программы в режиме совместимости для всех пользователей, а не только для одного.
Вторым же способом запуска программы в режиме совместимости является использование Мастера совместимости программ. Чтобы запустить данный мастер, нужно воспользоваться программой Справка и поддержка, доступ к которой можно получить либо с помощью меню Пуск, либо нажав клавишу F1. Проще всего после запуска программы Справка и поддержка в ее строке поиска ввести Compatibility Wizard. Результатом поиска будет ссылка Запуск мастера совместимости, после выбора которой будет запущен мастер совместимости программ.
Основное окно мастера совместимости программ представлено на рис. 7.10.
Как и с помощью первого способа установки параметров совместимости программ, с помощью мастера совместимости можно настроить запуск в режиме совместимости не только программ, расположенных на жестком диске, но и программ, расположенных на компакт-диске или DVD. Для этого нужно выбрать соответствующее положение переключателя Каким образом открыть программу, для которой требуется настроить параметры совместимости?.
• Выбрать из списка программ – позволяет выбрать программу из списка программ, найденных на жестком диске. Поиск программ выполняется при каждом запуске мастера совместимости и может занять продолжительное время.
• Использовать программу на компакт-диске – дает возможность выбрать программы, расположенные на компакт-диске или DVD. После установки переключателя в это положение мастер попросит вас вставить диск в привод (если он еще не вставлен), а после этого вы перейдете к шагу выбора параметров совместимости мастера.
• Найти программу вручную – позволяет ввести путь к программе вручную.
После того как вы выберете программу, которую нужно запустить в режиме совместимости, мастер попросит вас указать все те настройки, которые мы рассматривали при описании вкладки Совместимость. Сначала будет предложено выбрать операционную систему, которую нужно эмулировать, потом дополнительные настройки совместимости, а потом определить, будет ли программа запускаться с правами администратора. После этого будет выполнена попытка запуска программы, однако окно мастера закрыто не будет. На последнем шаге мастера вы должны будете ответить на вопросы, работает ли программа корректно и хотите ли вы отослать сведения о работе программы в совместимом режиме корпорации Microsoft.
Хранение сведений о запуске программы в совместимом режиме в реестреНо как же операционная система определяет, какую программу нужно запускать в совместимом режиме, а какую в обычном? Как часто бывает, для этого используются сведения, хранящиеся в реестре. Сведения обо всех программах, запускаемых в совместимом режиме, хранятся в параметрах строкового типа (каждый параметр описывает сведения о запуске одной программы) ветви реестра HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\ AppCompatFlags\ Layers (или ветви корневого раздела HKEY_LOCAL_MACHINE, в этом случает программы запускаются в совместимом режиме для всех пользователей). Название параметра данной ветви реестра соответствует пути к программе и ее названию. Значение же параметра состоит из слов, разделенных между собой пробелами. Первое слово определяет операционную систему, которую нужно эмулировать (соответственно, WIN95, WIN98, NT4SP5, WIN2000, WINXPSP2 или WINSRV03SP1), а остальные – дополнительные параметры запуска в совместимом режиме (соответственно, слова 256COLOR, 64 0X4 80, DISABLETHEMES, DISABLEDWM И HIGHDPIAWARE).
В реестре также содержатся сведения о программах, которые не могут работать в новой операционной системе. Если вы попытаетесь установить такую программу, то отобразится окно, сообщающее о том, что данная версия программы несовместима с операционной системой Windows Vista. Данное окно запускается с помощью программы pcaui.ехе, ссылка на которую содержится в параметре REG_EXPAND_SZ-типа ApphelpUIExe, расположенном в ветви реестра HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ AppCompatFlags.
Групповые политикиМеханизм совместимости программ, реализованный в операционной системе Windows Vista, как и многие другие компоненты данной операционной системы, можно настроить с помощью групповых политик. Для этого применяется подраздел групповых политик Конфигурация компьютера → Административные шаблоны → Компоненты Windows → Совместимость приложений. Все политики данного подраздела изменяют параметры, расположенные в ветви реестра HKEY_LOCAL_MACHINE\SOFTWARE\ Policies\Microsof t\Windows\AppCompat и имеющие тип REG_DWORD.
• VDMDisallowed – если значение данного параметра равно 1, то запуск 16-разрядных программ подсистемы MS-DOS (файл ntvdm.exe) будет запрещен. Этот параметр доступен и в корневом разделе HKEY_CURRENT_USER.
• DisablePropPage – при установке значения этого параметра равным 1 не будет отображаться вкладка Совместимость окна Свойства исполняемых файлов и ярлыков на них.
• DisableEngine – если значение данного параметра равно 1, то механизм проверки несовместимых с Windows Vista приложений (при запуске приложений) использоваться не будет.
• DisableWizard – при установке значения этого параметра равным 1 будет запрещено отображение мастера совместимости программ.
• DisablePCA – если значение данного параметра равно 1, то помощник по совместимости программ будет отключен. Этот помощник следит за запускаемыми программами и в случае обнаружения неполадок извещает о них пользователя. Параметр доступен и в корневом разделе HKEY_CURRENT_USER.Примечание
Информация об обнаруженных ассистентом Помощник по совместимости несовместимых с операционной системой Windows Vista программах заносится в журнал подраздела Журналы приложений и служб → Microsoft → Windows → Program-Compatibility-Assistant.
Групповые политики операционной системы Windows Vista также содержат отдельные политики для настройки поведения ассистента Помощник по совместимости программ. Они находятся в подразделе групповых политик Конфигурация компьютера → Административные шаблоны → Система → Диагностика → Диагностика совместимости приложений. Все политики данного подраздела изменяют параметры, расположенные В подразделах ветви HKEY_LOCAL_MACHINE\SOFTWARE\Policies\ Microsof t\Windows\WDI и имеющие тип REG_DWORD.
• Уведомлять о блокированных драйверах – политика определяет, будет ли ассистент в случае обнаружения невозможности установки драйвера отображать уведомление с предложением найти корректный драйвер на сайте Microsoft. Если данная политика запрещена, то уведомление с предложением поиска другого драйвера отображаться не будет.
Запрещение данной политики присваивает параметру EnabledScenarioExecut i onLeve 1, расположенному в подразделе {affc81e2-612a-4f70-6 f Ь2 -916f f 5c7e3f 8 }, значение 1. Также создается параметр ScenarioExecu-tionEnabled, значение которого равно 1.
• Обнаружение сбоев приложений, вызванных устаревшими библиотеками DLL или СОМ-объектами Windows – указывает, будет ли ассистент следить за установкой приложений и запуском ими устаревших DLL– или СОМ-объектов. Если данная политика включена, то ассистент при обнаружении попытки обращения к устаревшим объектам, из-за которого и происходит сбой установки, отображает окно с отображением сведений об устаревшем объекте и предложением посетить сайт Microsoft для поиска решений возникшей проблемы.
Установка данной политики присваивает параметру EnabledScenarioExecutionLevel, расположенному в подразделе { 65 9F0 8FB-2FAB-42a7-BD4F-566CFA52 87 6 9}, значение 1 или 2. Значение 1 устанавливается, если в раскрывающемся списке Режим запуска сценария политики выбрать Только диагностика и обнаружение. Значение 2 присваивается при выборе Обнаружение, диагностика и решение.
Также создается параметр ScenarioExecutionEnabled, значение которого равно 1.
• Обнаружение сбоев установки приложений – политика определяет, будет ли ассистент перед началом установки приложения проверять его совместимость с операционной системой Windows Vista с помощью эвристики. Если после проверки ассистент предполагает, что приложение не сможет инсталлироваться, то он запускает установку приложения в режиме совместимости с Windows ХР. Чтобы запретить ассистенту выполнение проверки методом эвристики, нужно запретить использование этой политики.
Запрещение данной политики присваивает параметру EnabledScenarioExecutionLevel, расположенному в подразделе {acfdlca6-l8b6-4ccf-9c07-580cdb6eded4 }, значение 1. Также создается параметр ScenarioExecutionEnabled, значение которого равно 1.
• Обнаружение средств установки приложений, требующих прав администратора – указывает, будет ли ассистент перед началом установки приложения проверять, необходимы ли при этом права администратора.
Установка данной политики присваивает параметру EnabledScenario-ExecutionLevel, расположенному в подразделе {D113E4AA-2D07-41bl-8D9B-C065194A791D}, значение 1 или 2. Значение 1 устанавливается, если в раскрывающемся списке политики выбрать Только диагностика и обнаружение. Значение 2 присваивается при выборе Обнаружение, диагностика и решение.
Также создается параметр ScenarioExecutionEnabled, значение которого равно 1.
• Обнаружение приложений, не способных запустить средства установки при включенном контроле учетных записей пользователей (UAC) – политика определяет, будет ли ассистент перед началом установки приложения проверять, может ли выполняться установка приложения при работе механизма UAC.
Установка данной политики присваивает параметру EnabledScenarioExecutionLevel, расположенному в подразделе { 081D3213-48AA-4533-9284-D98F01BDC8E6}, значение 1 или 2. Значение 1 устанавливается, если в раскрывающемся списке политики выбрать Только диагностика и обнаружение. Значение 2 присваивается при выборе Обнаружение, диагностика и решение.
Также создается параметр ScenarioExecutionEnabled, значение которого равно 1.
На этом мы закончим рассмотрение вопросов администрирования операционной системы Windows Vista.
Примечания
1
Шейдер – это программа, использующая определенные программируемые регистры видеокарты для создания графических эффектов. Существует два вида шейдеров – пиксельные и вершинные. Каждый из этих типов шейдеров обрабатывается в отдельной части графического конвейера.