Windows 7: Сертификация приложений в вопросах и ответах Алексей Федоров [email protected] Основные темы • • • • • Общие вопросы Цифровая подпись Процесс тестирования Маркетинг Что дальше? Промежуточные итоги • • • • 160+ сертифицированных приложений 220+ совместимых приложений 60+ откомментированных отчетов 400+ обученных специалистов Общие вопросы • Зачем сертифицировать приложения? – Структурированный способ проверки базовой совместимости – Возможность получения методологии тестирования • Для текущей и последующих версий продукта/продуктов – Возможность продвижения продукта – Оптимальный способ подтвердить компетенцию ISV/Software Solutions – 30 баллов для участия в партнерской программе Общие вопросы • Где взять утилиту для тестирования приложения? • Где описаны требования к сертифицируемым приложениям? • Где взять утилиты для подписи бинарных компонентов приложения цифровым сертификатом? • Где взять пробную версию Windows 7? Общие вопросы • Где взять утилиту для тестирования приложения? – connect.microsoft.com • Требуется Windows Live ID! – Программа • Windows 7 Software Logo Program – Раздел • Downloads Общие вопросы • Где описаны требования к сертифицируемым приложениям? – http://go.microsoft.com/?linkid=9630189 – «Формальное» описание – Рекомендуется использовать совместно с утилитой тестирования для уточнения вопросов • Альтернатива: – Тест/Результат -> Анализ комментариев в отчете – Или [email protected] Общие вопросы • Где взять утилиты для подписи бинарных компонентов приложения цифровым сертификатом? – SignTool – Windows 7 SDK – http://www.microsoft.com/downloads/details.as px?FamilyID=c17ba869-9671-4330-a63e1fd44e0e2505&displaylang=en Общие вопросы • Где взять пробную версию Windows 7? – http://technet.microsoft.com/enus/evalcenter/dd353205.aspx – 90-дневная версия – Вам нужна 64-битная версия! Цифровая подпись • Можно ли использовать для подписи бинарных компонентов сертификат, выданный компанией ХХХ? • Можно ли при тестировании использовать тестовый сертификат? • Есть ли подробное описание процесса подписи файлов цифровым сертификатом? • Цифровым сертификатом нужно подписывать все файлы? Цифровая подпись • Можно ли использовать для подписи бинарных компонентов сертификат, выданный компанией ХХХ? – Да, любой сертификат Microsoft Authenticode – Для регистрации на сайте Windows Quality Online Services нужен организационный сертификат компании Verisign – Сертификат Microsoft Authenticode от Verisign объединяет два сертификата – Стоимость = 99 долл. на один год – В случае успешной сертификации стоимость компенсируется! Цифровая подпись • Можно ли при тестировании использовать тестовый сертификат? – Да – для тестирования – Тестовый сертификат, созданный утилитой MakeCert – Финальное тестирования – только с MS Authenticode Цифровая подпись • Есть ли подробное описание процесса подписи файлов цифровым сертификатом? – Да, вот: • https://winqual.microsoft.com/help/codesign_files_with_your_verisign_id.htm Цифровая подпись • Цифровым сертификатом нужно подписывать все файлы? – – – – – Исполняемые файлы и библиотеки А также ocx, sys, cpl, drv, scr Только собственного изготовления! Чужие компоненты подписывать не нужно! Форма https://connect.microsoft.com/feedback/ CreateFeedbackForm.aspx?FeedbackForm ConfigurationID=3419&FeedbackType=3&SiteID=831 &wa=wsignin1.0, укажите все компоненты сторонних производителей, которые вызвали предупреждения в отчете Тестирование • Общие комментарии • «Разбор» полетов • Наше приложение прошло тестирование с результатом PASS, PASS WITH WARNING. Достаточно ли этого для успешного прохождения сертификации? – Зависит • Наше приложение прошло тестирование с результатом PASS WITH WARNING. Нужно ли вносить какие-то исправления? • Зависит Общие комментарии • 32- и 64-битные версии утилит • 32-битная версия – для предварительного тестирования • 64-битная версия – для финального тестирования • Используйте версию 1.0 – «Final release of toolkit October, 2009»! Заголовок отчета <?xml-stylesheet type='text/xsl' href='C:\ProgramData\Microsoft Windows Software Logo Kit\results.xsl'?> <REPORT OVERALL_RESULT="WARNING" VERSION="1.0" TOOLSET_ARCHITECTURE="X64" UIMODE="true" </REPORT> Раздел «Clean, reversible, installation» • Наиболее часто: – DisplayName, InstallLocation, Publisher, UninstallString, VersionMajor*, VersionMinor* • Проверка – Control Panel | Program and Features – Удаление компонентов – Используйте стандартное средство установки • Практически не бывает: – Перезагрузка после установки – Перезагрузка после переустановки Раздел «Install to the correct folders by default» • Часто – %WINDIR% / %SystemDrive% – В основном – «старые» инсталляторы или компоненты Microsoft – Использовать %AppData% Раздел «Digitally sign files and drivers» • Часто – Забываем подписывать собственные компоненты – При тестировании можно использовать тестовый сертификат – Не подписывать чужие компоненты! Раздел «Support x64 versions of Windows» • Практически никогда не было ошибок • «Старые» инсталляторы Раздел «OS version check» • Никто не проверяет версию • Проверка типа ОС, ее отдельных компонентов/настроек • Проверка функций – LoadLibrary() – GetProcAddress() Раздел «Follow User Account Control (UAC) guidelines» • Часто – Манифест! – Внутренний (лучше) или внешний – runLevel= • asInvoker • requiresAdmin Раздел «Adhere to Restart Manager messages» • Часто вызывает PASS WITH WARNING • Причины – разные • Лучше – по возможности встроить обработку соответствующих сообщений Раздел «Do not load Services and Drivers in Safe Mode» • Никто не использует сервисы и драйвера? • Никто не загружает сервисы/драйвера в режиме Safe Mode Раздел «Support multiuser sessions» • Частые предупреждения – Поддержка Multi User! – Не пишите в %USERS% - используйте COMMON_APPDATA = разделение профилей – Fast User Switching PASS WITH WARNING? • Присылайте отчет, включенный в тело письма - [email protected] Чем все заканчивается? • После отсылки результатов тестирования на сайт Winqual как узнать статус сертификации? – Signed = Сертифицировано – Все – Поздравляем! Маркетинг • Какие существуют способы продвижения сертифицированных приложений? • Наше приложение успешно прошло сертификацию, но мы не видим его в списке, опубликованном на сайте http://www.microsoft.com/windows/ compatibility/ru-ru/default.aspx • Существует ли руководство по использованию логотипа «Совместимо с Windows 7» на русском языке? – http://download.microsoft.com/documents/rus/isv/Win7 LogoGuideRevise_ru.pdf Маркетинг • Логотип «Compatible with Windows 7 • Участие в каталогах – http://www.microsoft.ru/isv/catalog – http://www.microsoft.com/windows/ compatibility/windows-7/ru-ru/applications.aspx • Письмо-подтверждение от Microsoft • Помощь в подготовке пресс-релиза • ... еще Что дальше? Что дальше? Совместимость • Возможность работы приложений на новой платформе Модернизация • Стабильность, надежность, измеряемость, экономичность Функциональность • Новые функции, интеграция с ОС, новые сценарии 01.04.10 Модернизация приложений - цель мероприятия • Обсудить подходы к модернизации приложений — процесс создания приложений, которые – – – – – корректно используют ресурсы операционной системы не нарушают ее стабильность позволяют измерять их производительность интегрируются с сервисами ядра системы корректно участвуют в жизненном цикле операционной системы – корректно работают с подсистемой электропитания – могут быть сконфигурированы с помощью новых средств, включенных в состав операционной системы Windows 7 3 семинара – С. Петербург, Екатеринбург, Новосибирск 100+ обученных специалистов Модернизация приложений • Подробное описание технологий и инструментов • Практические примеры • Рекомендации • 192 стр.! Ресурсы Блог для компаний-разработчиков http://blogs.technet.com/isv_team (тэг windowsclient) Информация по сертификации http://www.microsoft.ru/isv/win7_logo.aspx email [email protected] или [email protected] Спасибо