архив: требования к сертификации для приложений Windows Desktop v 1.1

Версия документа: 1,1

Дата документа: 26 января 2012 г.

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

Добро пожаловать!

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

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

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

Допустимость приложения

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

  • Это должно быть автономное приложение
  • он должен выполняться на локальном Windows 8.1 компьютере
  • это может быть клиентский компонент сертифицированного серверного приложения Windows
  • Это должен быть код и функция завершена

1. приложения совместимы и устойчивы

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

1,1. приложение не должно зависеть от режима совместимости Windows, сообщения AppHelp и других исправлений совместимости
1,2. приложение не должно зависеть от среды выполнения VB6
1,3. приложение не должно загружать произвольные библиотеки dll для перехвата вызовов API Win32 с помощью HKLM \ Software \ Microsoft \ Windows NT \ CurrentVersion \ Windows библиотеки _ dll.

2. приложения должны соответствовать рекомендациям по обеспечению безопасности Windows

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

2,1. приложение должно использовать надежные и соответствующие списки ACL для защиты исполняемых файлов 2,2. приложение должно использовать надежные и соответствующие списки ACL для защиты каталогов 2,3. приложение должно использовать надежные и соответствующие списки ACL для защиты разделов реестра 2,4. приложение должно использовать надежные и соответствующие списки ACL для защиты каталогов, содержащих объекты 2,5. приложение должно уменьшить доступ без прав администратора к службам, которые уязвимы для несанкционированного доступа 2,6. приложение должно препятствовать перезапуску служб с быстрым перезапуском более двух раз каждые 24 часа
**Примечание. доступ должен предоставляться только тем сущностям, которым он необходим.**

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

3. приложения поддерживают Windows функции безопасности

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

3,1. приложение не должно использовать атрибут AllowPartiallyTrustedCallersAttribute (APTCA), чтобы обеспечить безопасный доступ к сборкам со строгими именами
3,2 приложение должно быть скомпилировано с помощью флага/SafeSEH, чтобы обеспечить обработку безнадежных исключений.
3,3 приложение должно быть скомпилировано с помощью флага/NXCOMPAT, чтобы предотвратить выполнение данных
3,4 приложение должно быть скомпилировано с помощью флага/DYNAMICBASE для случайного расположения макета адресного пространства (ASLR).
3,5. приложение не должно считывать и записывать общие разделы PE

4. приложения должны соответствовать сообщениям диспетчера перезапуска системы

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

4,1. приложение должно соответствующим образом справляться с критическими завершениями работы
При критическом завершении работы приложения, возвращающие значение FALSE в WM _ куерендсессион, отправляются в WM _ ENDSESSION и закрываются, в то время как те, которые исключаются в ответ на куерендсессион WM, _ будут прерваны.

4.2 A GUI app must return TRUE immediately in preparation for a restart
WM \_ куерендсессион с lParam = ENDSESSION \_ клосеапп (0x1). Консольные приложения могут вызывать SetConsoleCtrlHandler, чтобы указать функцию, которая будет выполнять обработку уведомлений о завершении работы. Приложения службы могут вызывать Регистерсервицектрлхандлерекс, чтобы указать функцию, которая будет получать уведомления о завершении работы.
4.3 Your app must return 0 within 30 seconds and shut down
WM \_ ENDSESSION с lParam = ENDSESSION \_ клосеапп (0x1). Как минимум, приложение должно подготовиться, сохранив все пользовательские данные и изменив сведения, необходимые после перезагрузки.
4.4 Console apps that receive the CTRL\_C\_EVENT notification should shut down immediately 4.5 Drivers must not veto a system shutdown event
**Note: Apps that must block shutdown because of an operation that cannot be interrupted should explain the reason to the user.** Use ShutdownBlockReasonCreate to register a string that explains the reason to the user. When the operation has completed, the app should call ShutdownBlockReasonDestroy to indicate that the system can be shut down.

5. приложения должны поддерживать чистую, обратимую установку

Чистая, обратимая установка позволяет пользователям успешно управлять (развертывать и удалять) приложения в своих системах.

5,1. приложение должно правильно реализовать чистую обратимую установку
В случае сбоя установки приложение должно иметь возможность выполнить откат и восстановить предыдущее состояние компьютера.

5.2 Your app must never force the user to restart the computer immediately
Перезапуск компьютера не должен быть единственным вариантом в конце установки или обновления. Пользователи должны иметь возможность перезапускаться позже.
5.3 Your app must never be dependent on 8.3 short file names (SFN) 5.4 Your app must never block silent install/uninstall 5.5 Your app installer must create the correct registry entries to allow successful detection and uninstalls
для средств инвентаризации Windows и средств телеметрии требуются полные сведения об установленных приложениях. Если вы используете установщик на основе MSI, MSI автоматически создает записи реестра, приведенные ниже. Если установщик MSI не используется, модуль установки должен создать следующие записи реестра во время установки:
  • DisplayName
  • InstallLocation
  • Publisher
  • UninstallString
  • VersionMajor или MajorVersion
  • VersionMinor или MinorVersion

6. приложения должны использовать цифровые подписи файлов и драйверов

Цифровая подпись Authenticode позволяет пользователям удостовериться в подлинности программного обеспечения. Он также позволяет определить, был ли файл незаконным, например, если он заражен вирусом. подписывание кода в режиме ядра — это Windows функция, известная как целостность кода (CI), которая повышает безопасность операционной системы путем проверки целостности файла каждый раз, когда образ файла загружается в память. CI определяет, изменил ли системный двоичный файл вредоносным кодом. Также создает событие диагностики и журнала аудита системы, когда не удается правильно проверить подпись модуля ядра.

6,1. все исполняемые файлы (.exe, .dll, OCX, .sys, .cpl,. drv,. SCR) должны быть подписаны с помощью сертификата Authenticode.
6,2. все драйверы режима ядра, установленные приложением, должны иметь подпись майкрософт, полученную с помощью программы сертификации Windows оборудования. Все драйверы фильтра файловой системы должны быть подписаны корпорацией Майкрософт.
6,3 исключения и отказы
Отказы будут рассматриваться только для неподписанных распространяемых компонентов сторонних производителей, исключая драйверы. Для предоставления этого отказа требуется подтверждение связи с запросом подписанной версии распространяемого пакета (ов).

7. приложения не блокируют установку или запуск приложения на основе проверки версии операционной системы

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

7,1. приложение не должно выполнять проверки версий на равенство
Если требуется определенная функция, проверьте, доступен ли сам компонент. если требуется Windows XP, проверьте наличие Windows XP или более поздней версии (>= 5,1). Таким образом, код обнаружения будет продолжать работать в будущих версиях Windows. Модули установки и удаления драйверов не должны проверять версию операционной системы.

7.2 Exceptions and Waivers will be considered for apps meeting the criteria below:
  • приложения, поставляемые в виде одного пакета, который также выполняется в Windows XP, Windows Vista и Windows 7, и необходимо проверить версию операционной системы, чтобы определить, какие компоненты следует установить в данной операционной системе.
  • Приложения, которые проверяют только минимальную версию операционной системы (только во время установки, а не во время выполнения) с использованием только утвержденных вызовов API и должны правильно перечислять требования к минимальной версии в манифесте приложения.
  • Приложения безопасности (защита от вирусов, брандмауэр и т. д.), системные служебные программы (например, средства дефрагментации, резервного копирования и диагностики), которые проверяют версию операционной системы, используя только утвержденные вызовы API.

8. приложения не загружают службы или драйверы в защищенном режиме

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

  • 8,1 исключения и отказы
    Для драйверов и служб, которые должны быть запущены в защищенном режиме, требуется отказ. Запрос на отказ должен включать в себя все применимые драйверы или службы к разделам реестра SafeBoot, а также описать технические причины, по которым приложение или служба должны работать в защищенном режиме. Установщик приложения должен зарегистрировать все такие драйверы и службы с помощью следующих разделов реестра:
    - HKLM/System/CurrentControlSet/Control/SafeBoot/Minimal - HKLM/System/CurrentControlSet/Control/SafeBoot/Network

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

9. приложения должны следовать рекомендациям по контролю учетных записей пользователей

некоторые Windows приложения выполняются в контексте безопасности учетной записи администратора, а приложения часто запрашивают чрезмерные права пользователя и Windows привилегий. Управление доступом к ресурсам позволяет пользователям контролировать свои системы и защищать их от нежелательных изменений. Нежелательные изменения могут быть вредоносными, такими как rootkit-программы, осуществляющие управление компьютером, или результатом действия, выполненного пользователями с ограниченными привилегиями. Самым важным правилом управления доступом к ресурсам является предоставление минимального объема стандартного пользовательского контекста доступа, необходимого пользователю для выполнения необходимых задач. Следующие рекомендации по контролю учетных записей пользователей (UAC) предоставляют приложению необходимые разрешения, когда они необходимы для приложения, не оставляя систему постоянно подверженной угрозам безопасности. Большинству приложений не требуются права администратора во время выполнения, и они должны быть достаточно хорошо запущены как обычные пользователи.

9,1. приложение должно иметь манифест, который определяет уровни выполнения и сообщает операционной системе, какие привилегии требуются приложению для запуска
Маркировка манифеста приложения применяется только к исполняемым файлам, а не к DLL. Это обусловлено тем, что контроль учетных записей не проверяет библиотеки DLL во время создания процесса. также следует отметить, что правила контроля учетных записей не применяются к службам Windows. Манифест может быть либо внедренным, либо внешним.
Чтобы создать манифест, создайте файл с именем <_ имя приложения # C1.exe. manifest и сохраните его в том же каталоге, что и файл exe. Обратите внимание, что любой внешний манифест не учитывается, если приложение имеет внутренний манифест. Пример:
<requestedExecutionLevel Level = "" asInvoker | highestAvailable | requireAdministrator "" UIAccess = "" true | false ""/>

9.2 Your app s main process must be run as a standard user (asInvoker).
Все функции администрирования должны быть перемещены в отдельный процесс, работающий с правами администратора. Пользовательские приложения, такие как доступ к которым осуществляется через группу программ в главном меню и требуют повышения прав, должны быть подписаны Authenticode.
9.3 Exceptions and Waivers
Отказ требуется для приложений, которые запускают свой основной процесс с повышенными привилегиями (requireAdministrator или highestAvailable). Основной процесс определяется как пользовательская точка входа в приложение. Отказы будут учитываться в следующих сценариях:
  • Административные или системные средства с уровнем выполнения, имеющим значение highestAvailable и/или requireAdministrator
  • Только приложение платформы специальных возможностей или платформа автоматизации пользовательского интерфейса устанавливает флаг uiAccess в значение true, чтобы обойти изоляцию полномочий пользовательского интерфейса (UIPI). Для правильного запуска приложения этот флаг должен быть подписан с помощью Authenticode и должен находиться в защищенном месте файловой системы, а именно в файлах программы.

10. приложения должны устанавливаться в правильные папки по умолчанию

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

10,1. приложение должно быть установлено по умолчанию в папку "Program Files"
Для собственных 32-разрядных и 64-разрядных приложений в% ProgramFiles% и% ProgramFiles (x86)% для 32-разрядных приложений, работающих на x64. Данные пользователя или приложения никогда не должны храниться в этом расположении из-за разрешений безопасности, настроенных для этой папки.

10.2 Your app must avoid starting automatically on startup
Например, приложение не должно устанавливать ни одно из следующих действий.
  • разделы реестра run HKLM и или HKCU в разделе Software \ Microsoft \ Windows \ CurrentVersion
  • Разделы реестра Run HKLM и HKCU в разделе Software \ WOW6432Node \ Microsoft \ Windows \ CurrentVersion
  • запуска в меню "Пуск" Аллпрограмс

10.3 Your app data, which must be shared among users on the computer, should be stored within ProgramData 10.4 Your app s data that is exclusive to a specific user and that is not to be shared with other users of the computer, must be stored in Users\\<username>\\AppData 10.5 Your app must never write directly to the "Windows" directory and or subdirectories
Используйте правильные методы для установки файлов, таких как шрифты или драйверы.
10.6 Your app must write user data at first run and not during the installation in per-machine installations
При установке приложения отсутствует правильное расположение пользователя для хранения данных. Попытки приложения изменить поведение связи по умолчанию на уровне компьютера после установки будут неудачными. Вместо этого значения по умолчанию должны задаваться на уровне отдельных пользователей, что не позволяет нескольким пользователям перезаписывать значения по умолчанию для других пользователей.
10.7 Exceptions and Waivers
Отказ требуется для приложений, которые записывают в приложения .NET глобального кэша сборок (GAC), должны сохранять зависимости сборки в закрытом виде и хранить их в каталоге приложения, если только не требуется совместное использование сборки.

11. приложения должны поддерживать сеансы нескольких пользователей

Windows пользователи должны иметь возможность выполнять параллельные сеансы без конфликтов или прерываний.

11,1. приложение должно гарантировать, что при работе в нескольких сеансах локально или удаленно, нормальная функциональность приложения не будет отрицательно затронуты
11,2. параметры и файлы данных приложения не должны сохраняться между пользователями
11,3. Конфиденциальность и предпочтения пользователя должны быть изолированы для сеанса пользователя
11,4. экземпляры приложения должны быть изолированы друг от друга
Это означает, что данные пользователя из одного экземпляра не видны другому экземпляру приложения. Звук в неактивном сеансе пользователя не должен быть слышен в активном сеансе пользователя. В случаях, когда несколько экземпляров приложения используют общие ресурсы, приложение должно убедиться в отсутствии конфликта.

11.5 Apps that are installed for multiple users must store data in the correct folder(s) and registry locations
См. требования UAC.
11.6 User apps must be able to run in multiple user sessions (Fast User Switching) for both local and remote access 11.7 Your app must check other terminal service (TS) sessions for existing instances of the app
**Note:** If an app does not support multiple user sessions or remote access, it must clearly state this when launched from this kind of session.

12. приложения должны поддерживать 64-разрядные версии Windows

По мере того как 64-разрядное оборудование станет более распространенным, пользователи хотят, чтобы разработчики приложений могли воспользоваться преимуществами 64-разрядной архитектуры, переполнив их приложения на 64-bit, или что 32-разрядные версии приложения работают под управлением 64-разрядных версий Windows.

12,1. приложение должно иметь встроенную поддержку 64-bit или, как минимум, 32-разрядные Windows приложения должны беспрепятственно работать в 64-разрядных системах для обеспечения совместимости с 64-разрядными версиями Windows
12,2. приложение и его установщики не должны содержать 16-разрядный код или использовать любой 16-разрядный компонент.
12,3. Программа установки приложения должна обнаружить и установить правильные драйверы и компоненты для 64-разрядной архитектуры.
12,4. все подключаемые модули оболочки должны работать на 64-разрядных версиях Windows
Приложение 12,5, выполняющееся в эмуляторе WoW64, не должно пытаться обходят или обходить механизмы виртуализации WOW64
Если существуют конкретные сценарии, в которых приложения должны определить, выполняются ли они в эмуляторе WoW64, они должны сделать это, вызвав IsWow64Process.

Заключение

По мере развития этих требований мы будем Заметьте изменения в журнале изменений ниже. Стабильные требования очень важны для достижения наилучшей работы, поэтому мы будем следить за тем, чтобы вносимые изменения были устойчивыми и продолжали защищать и улучшать приложения.

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

История редакций

Дата Версия Описание редакции Ссылка на документ
20 декабря 2011 г. 1,0 Первоначальный черновик документа для предварительного просмотра.
26 января 2012 г. 1,1 Обновление до раздела # 2. 1,1

Дополнительные сведения о сертификации приложений для настольных систем

Требование Описание Дополнительные сведения
Совместимость и устойчивость Сбои & зависаний — это серьезный перерыв в работе пользователей и причин разочарования. Приложения должны быть устойчивыми и стабильными. устранение таких сбоев помогает обеспечить более предсказуемое, обслуживаемое, производительное и надежное программное обеспечение. Windows Vista, Windows 7 и Windows 8 операционные системы
средство проверки приложений
Библиотеки DLL библиотеки
придерживайтесь Безопасность Windows рекомендаций использование рекомендаций по обеспечению безопасности Windows поможет избежать создания уязвимости Windowsных поверхностей атак. Области атак — это точки входа, которые злоумышленник может использовать для атаки на операционную систему, используя преимущества уязвимости в целевом программном обеспечении. Одной из худших уязвимостей является повышение привилегий. Анализатор направлений атак
Списки управления доступом
поддержка функций Безопасность Windows операционная система Windows реализовала множество мер для обеспечения безопасности и конфиденциальности системы. Приложения должны поддерживать эти меры для поддержания целостности операционной системы. Неправильно скомпилированные приложения могут вызвать переполнение буфера, которое, в свою очередь, может вызвать отказ в обслуживании или выполнить вредоносный код. Справочник по инструменту Бинскопе
Придерживаться сообщений диспетчера перезапуска системы Когда пользователи инициируют завершение работы, в подавляющем большинстве случаев они имеют значительное желание увидеть успешность завершения работы. они могут находиться в спешите, чтобы выйти из офиса и "просто хотите" их компьютеры отключать. Приложения должны учитывать это желание, не блокируя завершение работы. Хотя в большинстве случаев завершение работы может не быть критическим, приложения должны быть готовы к возможности критического завершения работы. изменения завершения работы приложения в Windows Vista
Разработка диспетчера перезапуска
Чистая обратимая установка Чистая, обратимая установка позволяет пользователям успешно управлять (развертывать и удалять) приложения в своих системах. Практическое руководство. Установка необходимых компонентов при помощи ClickOnce-приложения
Установка приложения в 64-разрядных системах
Цифровые подписи файлов и драйверов Цифровая подпись Authenticode позволяет пользователям удостовериться в подлинности программного обеспечения. Он также позволяет определить, был ли файл незаконным, например, если он был заражен вирусом. подписывание кода в режиме ядра — это Windows функция, известная как целостность кода (CI), которая повышает безопасность операционной системы путем проверки целостности файла каждый раз, когда образ файла загружается в память. CI определяет, изменил ли системный двоичный файл вредоносным кодом. Также создает событие диагностики и журнала аудита системы, когда не удается правильно проверить подпись модуля ядра. Цифровые подписи для модулей ядра на Windows
Не блокируйте установку или запуск приложения на основе проверки версии операционной системы Важно, чтобы клиенты не блокировали искусственную блокировку при установке или запуске приложения, если нет технических ограничений. в общем случае, если приложения были написаны для Windows Vista или более поздних выпусков, у них не должно быть причин проверки версии операционной системы. Управление версиями операционной системы
не загружать службы и драйверы в режиме Сейф режим Сейф позволяет пользователям диагностировать и устранять неполадки Windows. Если это не требуется для основных операций системы (например, драйверов запоминающих устройств) или для целей диагностики и восстановления (например, антивирусных сканеров), драйверы и службы не должны быть настроены для загрузки в защищенном режиме. По умолчанию в защищенном режиме не запускаются большинство драйверов и служб, которые не были предварительно установлены с Windows. Они должны оставаться отключенными, если только система не требует их для основных операций, а также для целей диагностики и восстановления. определение того, работает ли операционная система в режиме Сейф
как определить, работает ли система в режиме Сейф, из драйвера устройства
Следуйте рекомендациям контроля учетных записей пользователей (UAC) некоторые Windows приложения выполняются в контексте безопасности учетной записи администратора, а многие требуют чрезмерных прав пользователя и прав Windows. Управление доступом к ресурсам позволяет пользователям контролировать свои системы в соответствии с нежелательными изменениями (нежелательные изменения могут быть вредоносными, например rootkit-незаметно, принимающие данные на компьютере, или действие от людей с ограниченными правами, например, сотрудник, устанавливающий Запрещенное программное обеспечение на рабочем компьютере). Самым важным правилом управления доступом к ресурсам является предоставление минимального объема стандартного пользовательского контекста доступа, необходимого пользователю для выполнения необходимых задач. Следующие рекомендации по контролю учетных записей предоставляют приложению необходимые разрешения при необходимости, не оставляя систему постоянно подверженной угрозам безопасности. Контроль учетных записей пользователей
Контроль учетных записей: рекомендации по обновлению приложений
По умолчанию установить в правильные папки Пользователи должны иметь единообразную и безопасную работу с расположением файлов установки по умолчанию, одновременно сохраняя возможность установки приложения в выбранное расположение. Также необходимо сохранить данные приложения в правильном расположении, чтобы несколько пользователей могли использовать один и тот же компьютер без повреждения или перезаписи данных и параметров друг друга. Общие сведения о требованиях к установке и удалению
Поддержка сеансов нескольких пользователей Windows пользователи должны иметь возможность выполнять параллельные сеансы без конфликтов или прерываний. службы удаленных рабочих столов рекомендации по программированию
Поддержка 64-разрядных версий Windows По мере того как 64-разрядное оборудование станет более распространенным, пользователи хотят, чтобы разработчики приложений могли воспользоваться преимуществами 64-разрядной архитектуры, переполнив их приложения на 64-bit, или что 32-разрядные версии приложения работают под управлением 64-разрядных версий Windows. совместимость приложений: Windows Vista 64-Bit

См. также раздел