Только 64-разрядная версия
Затронутые платформы
Серверы — Windows Server 2008 R2
Влияние на функции
Уровень серьезности — низкий
Частота — высокая
Описание
Windows Server 2008 R2 поставляется только с 64-разрядным номером SKU; нет 32-разрядного номера SKU для серверной версии операционной системы. Однако для клиента Windows 7 по-прежнему доступен 32-разрядный номер SKU.
Проявление влияния
Это повлияет на три области:
- 32-разрядные драйверы
- 32-разрядные подключаемые модули
- 16-разрядные исполняемые файлы
Решение для 32-разрядных драйверов
Перекомпилируйте 32-разрядные драйверы как подписанные 64-разрядные драйверы.
Решение для 32-разрядных подключаемых модулей
WoW64, эмулятор x86, позволяет 32-разрядным приложениям Windows легко работать в 64-разрядной версии Windows. WoW64 теперь является дополнительным компонентом, который необходимо установить, если необходимо выполнить 32-разрядный код.
Система изолирует 32-разрядные приложения от 64-разрядных приложений, что включает предотвращение конфликтов файлов и реестров. Поддерживаются консоль, графический интерфейс и приложения-службы. Система обеспечивает взаимодействие через границу 32/64 для таких сценариев, как вырезания и вставки и COM. Однако 32-разрядные процессы не могут загружать 64-разрядные библиотеки DLL, а 64-разрядные процессы не могут загружать 32-разрядные библиотеки DLL. Обычно это можно увидеть в подключаемых модулях оболочки, написанных для Windows Обозреватель.
32-разрядное приложение может определить, выполняется ли оно в WOW64, вызвав функцию IsWow64Process. Приложение может получить дополнительные сведения о процессоре с помощью функции GetNativeSystemInfo.
Обратите внимание, что 64-разрядная версия Windows не поддерживает запуск 16-разрядных приложений windows. Основная причина заключается в том, что дескриптор имеет 32 значимых бита в 64-разрядной версии Windows. Таким образом, дескрипторы не могут быть усечены и переданы в 16-разрядные приложения без потери данных. Попытки запуска 16-разрядных приложений завершаются сбоем со следующей ошибкой: ERROR_BAD_EXE_FORMAT.
Решение для 16-разрядных исполняемых файлов
64-разрядная версия Windows распознает ограниченное количество определенных 16-разрядных программ установщика и заменяет перенесенную 32-разрядную версию. Список подстановок хранится в реестре в следующем разделе: HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\NtVdm64 There встроена поддержка нескольких обработчиков установщиков, включая установщики InstallShield 5.x. Обратите внимание, что 64-разрядный установщик Windows может легко устанавливать 32-разрядные приложения на основе MSI в 64-разрядной версии Windows.
Ссылки на другие ресурсы
- Запуск 32-разрядных приложений
- Производительность и потребление памяти
- Сведения о реализации WOW64
- Перенаправитель реестра
- Перенаправитель файловой системы
- Управление памятью
- Соответствие процессоров
- Взаимодействие между процессами
- Установка приложений в 64-разрядных системах
- Отладка WOW64
- Функция IsWow64Process
- Функция GetNativeSystemInfo