Как узнать разрядность exe файла

Обновлено: 07.07.2024

Есть ли простой способ проверить, является ли двоичный файл 32-разрядным или 64-разрядным в Windows? Мне нужно проверить, прежде чем переместить программу на 32-битную машину и испытать впечатляющий сбой.

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

Изучив значения заголовков из ответа Ричарда , я нашел решение, которое является быстрым, простым и требует только текстового редактора. Даже Windows по умолчанию notepad.exe будет работать.

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

Проверьте первые печатные символы после первого появления PE . Эта часть, скорее всего, будет окружена хотя бы некоторым пробелом (может быть много), поэтому это можно легко сделать визуально.

Вот что вы найдете:

Предупреждение: использование Блокнота по умолчанию для больших файлов может быть очень медленным, поэтому лучше не использовать его для файлов размером более мегабайта или немногих. В моем случае для отображения файла размером 12 МБ потребовалось около 30 секунд. Однако Notepad ++ смог отобразить исполняемый файл размером 120 МБ практически мгновенно.

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

Если у вас есть HEX-редактор, смещение PE Signature находится в смещении 0x3C . Подпись PE\0\0 (буквы «P» и «E», за которыми следуют два нулевых байта), за которыми следует двухбайтовый тип машины в Little Endian.

Соответствующие значения 0x8664 для исполняемого файла x64 и 0x14c для x86. Возможных значений гораздо больше, но вы, вероятно, никогда не столкнетесь ни с одним из них или не сможете запустить такие исполняемые файлы на вашем ПК с Windows.

Полный список типов компьютеров, а также остальные спецификации .exe можно найти в разделе « Типы машин» в Microsoft PE и COFF .

Иногда необходимо узнать, является ли файл 32 или 64 битной программой прежде, чем его запустить или устанавливать. На веб-сайте источника не указана разрядность программы. Или, может, у вас в дистрибутивах и каталогах с портативными программами находятся приложения, которые никак не помечены, а вам необходимо знать на каких системах их можно запустить. Или же же вам просто хочется убедится, по собственным причинам, в том, что программа имеет ту или иную разрядность. Какие бы причины не были, у вас всегда будет в запасе два способа это проверить.

Примечание: Учтите, что вполне возможна ситуация, когда инсталлятор 32- разрядный, а программа 64 разрядная. Верно и обратное.

Программа EXE 64bit Detector для определения 32 или 64 бита

Существует множество способов узнать, как файл был скомпилирован. Например, технические специалисты могут использовать шестнадцатеричные редакторы для прочтения бинарных кодов. Но, обычным пользователям такой способ покажется чересчур сложным. Поэтому, вы всегда можете воспользоваться программой под названием "EXE 64bit Detector". Этот инструмент предназначен для запуска в командной строке от имени администратора. Даже если вы слабо знакомы с командной строкой, то не волнуйтесь, данный инструмент очень легко использовать. Сайт разработчика и программу вы можете найти по этой ссылке (кнопка для скачивания в конце страницы). Но, предупреждаем, прежде, чем скачать утилиту, сайт несколько раз перенаправит вас. Поэтому будьте аккуратны и внимательны. Обращайте внимание по каким ссылкам вы щелкаете. Сказывается тяга задержать вас подольше у рекламных блоков, но, тем не менее, инструмент бесплатен и его достаточно скачать один раз. Утилита запускается во всех текущих версиях Windows.

Как уже говорилось, использовать утилиту очень просто. Откройте командную строку с правами администратора и введите следующую команду:

Параметр "-f" нужно обязательно указывать. И если Exe64bitDetector и тестируемая программа находятся в разных каталогах, то необходимо так же указывать полный путь до программы. Обратите внимание, что кроме информации о разрядности, программа так же показывает включены ли ASLR (случайное выделение места под модули в оперативной памяти), DEP (дополнительные проверки содержимого памяти для обеспечения безопасности) и SEH (механизм, предоставляющий доступ программе к таким исключениям, как деление на ноль, нарушения доступа к памяти и прочим). На рисунке ниже показан пример выполнения программы:

Пример использования exe 64bit detector

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

Как проверить является ли файла 32 или 64 разрядным простым способом

Несмотря на то, что в 64-разрядной Windows существует два каталога для программ "Program files" (для 64-разрядных) и "Program files (x86)" (для 32-разрядных), наличие программы в том или ином каталоге не является достоверным признаком разрядности программы. Так как вы можете установить программу в любой каталог. Поэтому, стоит использовать следующий простой трюк:

Простой способ узнать 32 или 64 бита

  1. Щелкните правой кнопкой мыши на исполняемом файле, разрядность которого вы хотите узнать
  2. Выберите пункт "Свойства"
  3. Перейдите на вкладку "Совместимость"
  4. Пример открывшегося диалогового окна показан выше
  5. В области "Режим совместимости" поставьте галочку напротив пункта "Запустить программу в режиме совместимости с:"
  6. Раскройте выпадающее меню, в котором перечислены операционные системы. Если список версий начинается с Vista, как показано на рисунке, то файл является 64-битным. Если список операционных систем включает в себя Windows XP, то файл является 32-битным.
  7. Не забудьте снять флажок напротив пункта "Запустить программу в режиме совместимости с:"

Теперь, у вас всегда будут под рукой два способа, как узнать 32 или 64 битная программа.


Установить программы в Windows 10 довольно просто. Вам всего лишь убедиться, что вы устанавливаете правильный тип приложения. Если вы используете 32-разрядную версию Windows, приложение тоже должно быть 32-разрядным. Аналогично, если вы используете 64-битную Windows, приложение должно быть 64-битным.

Хорошие разработчики приложений не только предоставляют ссылки на разные версии, они также соответственно разрядности называют EXE-файл, чтобы пользователи по названию смогли определить, 32-битный или 64-битный. Вы удивитесь, но не существует быстрого способа проверить, является ли EXE 32-битным или 64-битным.

Что такое разрядность

Более подробно о разрядности мы рассказывали в статье «Что такое разрядность системы Windows».

Как узнать разрядность программы в Windows

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

Проверить разрядность .EXE в свойствах файла

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

  1. Кликните правой кнопкой мышки на исполняемом файле, разрядность которого нужно проверить.
  2. Из выпадающего меню выберите пункт «Свойства».
  3. Перейдите на вкладку «Совместимость». В разделе «Режим совместимости» установите флажок «Запустить эту программу в режиме совместимости для».
  4. Откройте раскрывающееся меню со списком операционных систем:
    1. Если в список операционных систем входит Windows XP, как показано на снимке экрана, то программа 32-битная.
    2. Если список начинается с Vista, тогда программа 64-битная.

    Проверить разрядность .EXE в свойствах файла

    Не забудьте снять флажок «Запускать эту программу в режиме совместимости для:»

    Определить разрядность .EXE с помощью SigCheck

    Скачайте бесплатную утилиту командной строки SigCheck и распакуйте ее в папку C:\Windows.

    Определить разрядность .EXE с помощью SigCheck

    Откройте командную строку с обычными правами пользователя и введите следующую команду:

    Разрядность может иметь не только система, но и программы, и драйвера. Большинство программ создавалось именно под 32-битные операционки. 32-разрядные приложения отлично работают и в 64-битной среде. Наоборот – не работает никак: истинно 64-битные проги не способны запуститься в 32-разрядой Windows.

    Как узнать какая разрядность у вашей Windows?

    Если у вас возник такой вопрос, то скорее всего у вас 32-разрядная система — она более популярна и всегда ставиться по умолчанию. 64-разрядную систему как правило устанавливают осознанно и намеренно.

    Понять какая разрядность у вашей ОС очень просто.

    Windows XP

    Пуск > Мой компьютер > Свойства > вкладка «Общие» > Смотрим в раздел Система: если написано 64-битная версия, или 64-bit Edition, 64-бит. Если этого нет но есть что-то вроде Service Pack 3, то 32-разрядная.


    Различия и преимущества разного количества ядер

    Итак, существует два вида процессоров: одноядерные (x32) и двухъядерные (x64). Иногда можно встретить обозначение x86 — это не отдельный вид процессоров, а обозначение архитектуры микропроцессора. Чаще всего цифра x86 свидетельствует о том, что процессор одноядерный, но она также может использоваться и для 64-битного процессора. Поэтому не стоит ориентироваться на неё, всегда ищите обозначение в формате x36 или x64.

    Производительность и скорость работы, соответственно, выше у 64-битных процессоров, так как работают сразу два ядра, а не одно. Если вы используете 32-битный процессор, то можете установить на свой компьютер сколько угодно оперативной памяти (ОЗУ), но при этом система будет использовать только 4 ГБ из всей памяти. При наличии 64-битного процессора можно использовать до 32 ГБ оперативной памяти.

    Какая разрядность лучше

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

    Что такое разрядность системы – плюсы и минусы

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

    Итак, существует две разрядности – 64x и 32x (последняя обозначается так же 86x, но сути не меняет, это все та же 32-x).

    Обратимся к великой Википедии и посмотрим четкое определение разрядности:

    Разрядность (битность) – количество информации, которое одновременно может быть обработано устройством или шиной.

    Существует разрядность не только операционной системы, но и процессора, шины данных, видеокарты и пр.

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


    Как узнать разрядность процессора компьютера и ноутбука

    Все довольно-таки просто. Во-первых, выше мы рассматривали способ со свойствами системы. Там указана битность системы, а через запятую битность процессора. Но есть и несколько других методов, которые мы сейчас и проверим.

    Это интересно: Как узнать количество ядер процессора

    Использование командной строки

    Для запуска командной строки в Windows 7 найдите его в меню Пуск – Все программы – Стандартные или просто введите «CMD» в поиске. Для Windows 10 нажмите сочетание клавиш Win+X и выберите соответствующий пункт. Вместо командной строки может быть написано PowerShell, если это так, используем эту утилиту (аналог командной строки).

    В открывшемся окошке пишем команду – systeminfo.

    Ищем пункт «Процессоры» или «Processor(s)», напротив которого будет указано разрядность процессора. А на моем ноутбуке HP это обозначение почему-то не указано, по неизвестной причине.


    Сморим битность процессора в BIOS

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

    Читайте также: