Windows vista

Дякую вам за підтримку!

Засоби для ІТ-фахівців

У першій частині огляду «Windows Vista / Windows 7 - питання сумісності додатків» ми зупинилися на тому, що створили набір «латок», що дозволяють вирішити проблеми сумісності. З точки зору користувачів, ми просто вказали якісь опції, що забезпечили працездатність програми. Насправді, ми задіяли інфраструктуру забезпечення сумісності додатків - Application Compatibility Infrastructure, яка, як ми знаємо з попередньої частини, є частиною сучасних операційних систем сімейства Windows.

Результат наших маніпуляцій з опціями на вкладці «Сумісність» був збережений в реєстрі - в галузі HKEY_CURRENT_USER \ Software \ Microsoft \ Windows NT \ CurrentVersion \ AppCompatFlags \ Layers. У відповідного запису в цій галузі реєстру будуть вказані застосовані до додатка системні «заплатки».

Windows vista

Реєстр і «заплатки», застосовані до додатка

Запустимо утиліту Compatibility Administrator під обліковим записом «адміністратор» - в деревовидному списку в лівій частині екрана в розділі Per User Compatibility Settings ми побачимо настройки, внесені нами через вкладку «Сумісність».

Windows vista

«Латки», застосовані до додатка

Давайте використаємо можливості утиліти Compatibility Administrator для того, щоб створити набір «латок», який буде прив'язаний не тільки до конкретного користувача, але і який можна буде распростаріть на всі комп'ютери в організації. У розділі Custom Databases виберемо елемент New Database (1) [Untitled_1]. натиснемо на ньому праву кнопку миші і виберемо команду Create New | Application Fix. У діалогової панелі Create new Application Fix вкажемо назву програми, ім'я виробника і місце розташування виконуваного файлу програми.

Windows vista

Створення набору «латок» - крок 1

Натиснемо кнопку Далі і в діалогової панелі Compatibility Modes виберемо опцію Microsoft Windows XP (SP2).

Windows vista

Створення набору «латок» - крок 2

Ще раз натиснемо кнопку Далі і в панелі Compatibility Fixes включимо «латочку» Disable Themes.

Windows vista

Створення набору «латок» - крок 3

Після натискання кнопки Далі в панелі Matching Information переконаємося в тому, що наші «заплатки» ставляться тільки до конкретної версії додатка.

Windows vista

Створення набору «латок» - крок 4

Натиснемо кнопку Готово і переконаємося в тому, що набір «латок» для обраного нами додатки успішно створений.

Windows vista

Набір «латок» для обраної програми

Скористаємося кнопкою Save в панелі інструментів для збереження нашого набору «латок» в файлі - в нашому прикладі ми назвемо цей набір AdobeFix і збережемо його в каталозі C: ​​\ SDBShare \ з ім'ям ReaderFix.sdb.

Натискання правої кнопки в розділі Custom Databases | AdobeFix і вибір команди Install призведе до розгортання нашого набору «латок» на даному комп'ютері. Якщо ж ми хочемо розгорнути створений нами набір «латок» на інших комп'ютерах, слід скористатися утилітою% windir% \ system32 \ sdbinst.exe. Синтаксис для нашого прикладу буде виглядати так:

При необхідності така команда може бути включена до складу логон-скриптів, групових політик, до складу SMS-пакета або виконана як частина пакету установки програми.

Для включення набору «латок» в пакет установки програми можна використовувати наступний Скрітпи, який потім розгортається або засобами SCCM, або Active Directory Group Policies:

Для розгортання .SDB-файлу засобами Visual Basic Script можна використовувати наступний код:

Значення SDB_GUID можна отримати натиснувши праву кнопку миші на відповідному наборі латочок в Compatibility Assistant і вибравши команду Properties.

Відзначимо, що для того, щоб заборонити завантаження і оновлення версій продукту, тим самим забезпечивши працездатність поточної версії з застосованими «латками» можна використовувати утиліту AppLocker, що з'явилася в Windows 7 або відповідні налаштування політик в Windows Vista.

Утиліта Compatibility Administrator дозволяє подивитися, які програми встановлені на комп'ютери і вимагають «латок» для запуску - для цього використовується команда Search | Fixed programs. У діалогової панелі Search for Fixes можна вказати, де шукати (за замовчуванням - C: \ Program Files \ *. Exe), які типи виправлень показувати - Entries with Compatibility Fixes (додатки з «латками»), Entries with Compatibility Modes (додатки, до яких застосовані т.зв. рівні сумісності) та Entries with AppHelp (додатки, які мають спеціальні записи для утиліти AppHelp). По завершенні пошуку ми отримаємо список додатків із зазначенням програмного компонента, типу виправлення і розташування виправлення - в глобальній або локальній базі даних. Подвійне клацання мишею по елементу списку дозволяє отримати детальну інформацію про застосовані до додатка виправлення.

Windows vista

Панель «Search for Fixes» і результати пошуку

Вивчення бази даних, що містить «заплатки» для різних додатків, дозволяє створити список найбільш «популярних» латочок. На першому місці - заплатки, пов'язані з версією операційної системи і т.зв. рівні сумісності, які дозволяють емулювати поведінка певної версії операційної системи. Також серед найбільш часто вживаних латочок зустрічаються заплатки, пов'язані з роботою з реєстром і файловою системою. Далі йдуть більш специфічні заплатки, які відтворюють ті чи інші функції, реалізовані в попередніх версіях операційної системи.

Інші можливості Microsoft Application Compatibility Toolkit

У цьому огляді ми розглянули, як, використовуючи утиліту Compatibility Administrator, створити набір «латок» для програми, але, при необхідності, використовувати його для виправлення використання цієї функції на всіх комп'ютерах в організації. У наступній частині ми наведемо основні рекомендації щодо створення сумісних додатків для розробників.

Схожі статті