Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Затронутые платформы
Клиенты — Windows 7
Серверы — Windows Server 2008 R2
Влияние функции
Серьезность — высокая
Частота — высокая
Описание
Внутренний номер версии для Windows 7 и Windows Server 2008 R2 — 6.1. Функция GetVersion теперь возвращает этот номер версии приложениям при запросе. Это особенно важно для антивируса, резервного копирования, служебных приложений и защиты копирования.
Проявление влияния
Проявление этого изменения зависит от приложения. Это означает, что любое приложение, которое специально проверяет версию операционной системы, получит более высокий номер версии, что может привести к одной или нескольким из следующих ситуаций:
- Установщики приложений могут быть не в состоянии установить приложение, и приложения могут быть не в состоянии запустить
- Приложения могут стать неустойчивыми или аварийными
- Приложения могут создавать сообщения об ошибках, но продолжать работать должным образом
Смягчение последствий
Большинство приложений будут работать правильно в Windows 7 и Windows Server 2008 R2, так как совместимость приложений в Windows 7 и Windows Server 2008 R2 очень высока. Однако Windows 7 и Windows Server 2008 R2 включают представление совместимости для установщиков и приложений, которые проверяют версию операционной системы.
Чтобы включить представление совместимости, пользователи могут щелкнуть правой кнопкой мыши ярлык или исполняемый файл, а затем применить представление совместимости Windows XP с пакетом обновления 2 (SP2) или Windows Vista на вкладке "Совместимость". В большинстве случаев это должно позволить приложению правильно работать без каких-либо изменений в приложении.
ИТ-специалисты также могут применять любые применимые исправления совместимости VersionLie с помощью средства администратора совместимости, который устанавливает с помощью набора средств совместимости (ACT). Например, если приложению не удается функционировать, так как оно выполняет проверку, но не находит сведения о версии Windows XP® с пакетом обновления 2 (SP2), можно применить параметр WinXPSP2VersionLie, чтобы вернуть приложению правильную информацию о номере версии независимо от фактической версии операционной системы, работающей на компьютере. Доступные исправления совместимости VersionLie:
- Win95VersionLie
- Win98VersionLie
- WinNT4SP5VersionLie
- Win2000VersionLie
- Win2000SP1VersionLie
- Win2000SP2VersionLie
- Win2000SP3VersionLie
- WinXPVersionLie
- WinXPSP1VersionLie
- WinXPSP2VersionLie
- VistaRTMVersionLie
- VistaSP1VersionLie
- VistaSP2VersionLie
- Win2K3RTMVersionLie
- Win2K3SP1VersionLie
Решение
Как правило, приложения не должны выполнять проверки версий операционной системы. Если приложению требуется определенная функция, предпочтительнее попытаться найти эту функцию и дать сбой только в том случае, если необходимая функция отсутствует. Как минимум, приложения всегда должны принимать номера версий, превышающие или равные наименьшей поддерживаемой версии операционной системы. Исключения должны возникать только в том случае, если существует определенное юридическое требование, бизнес или системный компонент.
Ссылки на другие ресурсы
- Скачивание набора средств совместимости приложений
- Известные исправления совместимости, режимы совместимости и сообщения AppHelp