Система загружает DLL в существующий ПРОЦЕСС, а не в поток. Каждая DLL в процессе может получать уведомление при запуске или остановке потока с помощью функции LibMain . — person Daniel Earwicker; 31.07.2009
Ваши пункты 1 и 2 не на 100% верны. Поскольку вы можете использовать LoadLibraryEx в exe или dll, это означает, что вы можете использовать GetProcAddress для загрузки точки входа из exe или dll. Таким образом, файлы exe и dll могут быть динамически связаны и могут иметь любое количество точек входа. — person jussij; 31.07.2009
Я не знаю, почему все отвечают на этот вопрос в контексте .NET. Вопрос был общим и нигде не упоминал .NET.
Что ж, основные отличия заключаются в следующем:
EXE
- EXE всегда работает в собственном адресном пространстве, т.е. это отдельный процесс.
- Назначение EXE — запустить отдельное собственное приложение.
DLL
- DLL всегда нуждается в хосте exe для запуска. т.е. он никогда не может работать в собственном адресном пространстве.
- Назначение DLL — иметь набор методов / классов, которые можно повторно использовать из другого приложения.
- DLL — это реализация Microsoft разделяемой библиотеки.
Формат файлов DLL и exe практически одинаков. Windows распознает разницу между DLL и EXE через PE-заголовок в файле. Дополнительные сведения о заголовке PE см. в этой статье на MSDN
КАК УСТРОЕН EXE ФАЙЛ?
person Aamir schedule 31.07.2009
Итак, если вы хотите, чтобы вы могли переименовать и отредактировать заголовок файла, чтобы превратить dll в exe и наоборот? — person RCIX; 05.12.2009
Скорее всего, это невозможно — см. ответ Кичика ниже. — person Jonathon Reinhart; 07.04.2013
Разница в том, что EXE имеет точку входа, «основной» метод, который запускается при выполнении.
Код в DLL необходимо вызывать из другого приложения.
person Robin Day schedule 29.09.2009
Это неправильная загрузка, это означает, что у библиотек DLL нет точек входа. DLL могут иметь точку входа DLLMain, которая вызывается, когда (среди прочего) DLL загружается в процесс. — person jay.lee; 07.12.2010
Вы могли бы упомянуть еще несколько отличий относительно структуры.
- И DLL, и EXE имеют одинаковую файловую структуру — Portable Executable или PE. Чтобы различить их, можно заглянуть в Characteristics член IMAGE_FILE_HEADER внутри IMAGE_NT_HEADERS . Для библиотеки DLL установлен флаг IMAGE_FILE_DLL (0x2000). Для EXE это флаг IMAGE_FILE_EXECUTABLE_IMAGE (0x2).
- PE-файлы состоят из нескольких заголовков и нескольких разделов. Обычно есть раздел для кода, раздел для данных, раздел со списком импортированных функций и раздел для ресурсов. Некоторые разделы могут содержать более одного предмета. В заголовке также описан список каталогов данных, которые расположены в разделах. Эти каталоги данных позволяют Windows находить в PE то, что ей нужно. Но один из типов каталогов данных, который никогда не будет в EXE (если вы не создаете EXE-файл frankenstein), — это каталог экспорта. Здесь файлы DLL содержат список функций, которые они экспортируют, и могут использоваться другими файлами EXE или DLL. С другой стороны, у каждой библиотеки DLL и EXE есть каталог импорта, в котором перечислены функции и файлы DLL, необходимые для запуска.
- Также в заголовках PE ( IMAGE_OPTIONAL_HEADER ) есть член ImageBase . Он указывает виртуальный адрес, по которому PE предполагает, что он будет загружен. Если он загружен по другому адресу, некоторые указатели могут указывать на неправильную память. Поскольку EXE-файлы одними из первых загружаются в новое адресное пространство, загрузчик Windows может гарантировать постоянный адрес загрузки, обычно это 0x00400000. Такой роскоши не существует для DLL. Два файла DLL, загруженные в один процесс, могут запрашивать один и тот же адрес. Вот почему у DLL есть другой каталог данных, называемый Base Relocation Directory, который обычно находится в собственном разделе — .reloc . Этот каталог содержит список мест в DLL, которые необходимо перебазировать / исправить, чтобы они указывали на нужную память. У большинства EXE-файлов нет этого каталога, но некоторые старые компиляторы создают их.
Дополнительную информацию по этой теме можно найти в MSDN.
Python в .EXE ► КАК?
person kichik schedule 24.11.2010
1. Так как это флаги, оба могут быть установлены одновременно. 2. Как вы сказали, это возможно, но исчезающе маловероятно. 3. ASLR также переместит исполняемый файл, если сможет. Так что да, даже у exe могут быть перестановки. В общем, EXE, являющиеся библиотеками DLL, возможны, но редко. — person Deduplicator; 23.11.2018
Этот ответ был немного более подробным, чем я думал, но прочитайте его.
DLL:
В большинстве случаев файл DLL представляет собой библиотеку. Есть несколько типов библиотек, динамические и статические — прочтите о различиях . DLL означает библиотеку динамических ссылок, которая сообщает нам, что это часть программы, но не целиком. Он состоит из многократно используемых программных компонентов (библиотеки), которые можно использовать для более одной программы. Имейте в виду, что всегда можно использовать исходный код библиотеки во многих приложениях с помощью копирования и вставки, но идея DLL / статической библиотеки заключается в том, что вы можете обновить код библиотеки и в то же время обновить все приложения, используя это — без компиляции.
Например:
Представьте, что вы создаете компонент Windows GUI как Button. В большинстве случаев вы захотите повторно использовать написанный код, потому что это сложный, но общий компонент — вы хотите, чтобы его использовали многие приложения, но вы не хотите давать им исходный код Вы не можете скопировать и вставить код кнопки в каждую программу, поэтому вы решаете создать DL-библиотека (DLL).
Эта библиотека «button» требуется для запуска вырезанных файлов EXE, и без нее они не будут работать, потому что они не знают, как создать кнопку, а только как говорить к нему.
Аналогичным образом, DLL не может быть запущена — запускается, потому что это только часть программы, но не содержит информации, необходимой для создания » процесс «.
EXE:
Исполняемый файл — это программа. Он знает, как создать процесс и как взаимодействовать с DLL. Для создания кнопки требуется библиотека DLL, а без нее приложение не запускается — ОШИБКА.
надеюсь это поможет.
person hannson schedule 31.07.2009
В мире разработки .NET, когда вы импортируете что-то из других модулей, например, из C # using SomeClassFromALibrary , эта библиотека связана с проектом через DLL? Просто пытаюсь понять, правильно ли я понимаю — person Abdul; 13.09.2016
Обычно вы используете ключевое слово using для пространств имен, а не для классов. Исключение составляет using static , доступный из C # 6, который импортирует все статические члены, присутствующие в указанном классе (ссылка). Ключевое слово using дает обещание компилятору, что во время выполнения будет библиотека, содержащая это пространство имен. Библиотека не связана с проектом через эту DLL, DLL — это библиотека, связанная с проектом (сборкой). Эта DLL содержит весь код, обещанный во время компиляции. — person Darius; 18.08.2020
Библиотека динамической компоновки (DLL) — это библиотека, поэтому не может выполняться напрямую. Если вы попытаетесь запустить его, вы получите сообщение об отсутствии точки входа. Для его выполнения требуется точка входа (основная функция), этой точкой входа может быть любое приложение или исполняемый файл. Связывание DLL происходит во время выполнения. Вот почему это называется библиотекой «Dynamic Link».
Для проверки информации заголовка доступно множество программного обеспечения. Единственная разница, из-за которой оба работают по-разному, — это бит в заголовке, как показано на диаграмме ниже.
EXE-файл имеет только одну главную запись, что означает, что это изолированное приложение, когда система запускает exe, создается новый процесс, в то время как библиотеки DLL имеют много точек входа, поэтому, когда приложение использует его, новый процесс не запускается, DLL можно повторно использовать и управлять версиями. DLL уменьшает пространство для хранения, поскольку разные программы могут использовать одну и ту же dll.
person Zaheer Ahmed schedule 10.01.2014
Вы говорите, что флаг внутри заголовка PE указывает, какой это тип файла (не имеет отношения к расширению файла) — Значит ли это, что расширение .exe или .dll не имеет значения? Это тот флаг в заголовке, который действительно их отличает . Так что, если я создам exe и назову его через взаимодействие с графическим интерфейсом как .dll , но затем изменю этот флаг вручную, он все равно будет запущен? — person Abdul; 13.09.2016
1) Файл DLL представляет собой библиотеку динамической компоновки, которая может использоваться в файлах exe и других файлах DLL.
Файл EXE — это исполняемый файл, который запускается в отдельном процессе, управляемом ОС.
2) DLL не являются исполняемыми напрямую. Это отдельные файлы, содержащие функции, которые могут быть вызваны программами и другими библиотеками DLL для выполнения вычислений и функций.
EXE — это программа, которая может быть выполнена. Пример: программа Windows
3) Возможность повторного использования DLL: их можно повторно использовать для других приложений. Если кодировщик знает имена и параметры функций и процедур в файле DLL.
EXE: Только для определенной цели.
4) DLL будет совместно использовать тот же процесс и пространство памяти вызывающего приложения, в то время как
EXE создает свой отдельный процесс и пространство памяти.
5) Использует
DLL: вы хотите, чтобы его использовали многие приложения, но вы не хотите предоставлять им исходный код. Вы не можете скопировать и вставить код кнопки в каждую программу, поэтому вы решаете, что хотите создать DL-библиотека (DLL).
EXE: когда мы работаем с шаблонами проектов, такими как приложения Windows Forms, консольные приложения, приложения WPF и службы Windows, они создают сборку exe при компиляции.
6) Сходства:
И DLL, и EXE являются двоичными файлами, имеют сложную вложенную структуру, определяемую форматом Portable Executable, и они не предназначены для редактирования пользователями.
person skanda93 schedule 11.09.2015
Две вещи: расширение и флаг заголовка, хранящиеся в файле.
Одно небольшое отличие состоит в том, что в большинстве случаев DLL имеют раздел экспорта, в котором экспортируются символы. EXE никогда не должны иметь раздела экспорта, поскольку они не являются библиотеками, но ничто не мешает этому. Загрузчику Win32 все равно.
В остальном они идентичны. Итак, вкратце, EXE — это исполняемые программы, а DLL — это библиотеки, загружаемые в процесс и содержащие какие-то полезные функции, такие как безопасность, доступ к базе данных или что-то еще.
person judy smith schedule 25.08.2011
+1: Так мало людей понимают, что технически разница всего в одном бите в PE-заголовке. — person Serge Wautier; 08.09.2011
Интересно, что бы произошло в интервью, если бы вы ответили таким образом. Они: В чем разница между DLL и EXE? Вы: Один бит. — person twitchdotcom slash KANJICODER; 16.04.2020
.Exe — это программа. .Dll — это библиотека, которую может вызывать .exe (или другая .dll).
То, что говорит sakthivignesh, может быть правдой в том, что один .exe может использовать другой, как если бы это была библиотека, и это делается (например) с некоторыми компонентами COM. В этом случае «подчиненный» .exe — это отдельная программа (строго говоря, отдельный процесс — возможно, запущенный на отдельной машине), но она принимает и обрабатывает запросы от других программ / компонентов / чего угодно.
Однако, если вы просто выбираете случайные .exe и .dll из папки в ваших Program Files, скорее всего, COM не имеет отношения к делу — это просто программа и ее динамически подключаемые библиотеки.
Используя Win32 API, программа может загружать и использовать DLL, используя функции LoadLibrary и GetProcAddress API, IIRC. Подобные функции были и в Win16.
COM во многом является развитием идеи DLL, изначально задуманной как основа для OLE2, тогда как .NET является потомком COM. DLL существуют со времен Windows 1, IIRC. Изначально они были способом совместного использования двоичного кода (особенно системных API) между несколькими запущенными программами с целью минимизации использования памяти.
person Steve314 schedule 29.09.2009
EXE виден системе как обычный исполняемый файл Win32. Его точка входа относится к небольшому загрузчику, который инициализирует среду выполнения .NET и сообщает ему загрузить и выполнить сборку, содержащуюся в EXE. DLL видна системе как Win32 DLL, но, скорее всего, без точек входа. Среда выполнения .NET хранит информацию о содержащейся сборке в собственном заголовке.
dll — это набор многоразовых функций, где в качестве .exe — исполняемый файл, который может вызывать эти функции.
person rahul schedule 31.07.2009
Среда выполнения .NET не имеет ничего общего с .exe или .dll, они представляют собой файлы с двоичным машинным кодом (если они созданы на каком-либо языке программирования, который использует среду выполнения .NET, тогда задействована среда выполнения .NET, но это уже ответственность сам код exe, а не загрузчик ОС). — person Ped7g; 24.08.2016
EXE — это исполняемая программа, тогда как DLL — это файл, который может загружаться и выполняться программами динамически.
person Bhushan Bhangale schedule 31.07.2009
Кто-то, наверное, посчитал ваш ответ недостаточно подробным. — person JesperE; 10.08.2009
да, люди могут не знать, что такое исполняемая программа, и это само по себе становится совершенно новым вопросом. — person Mindless; 21.09.2014
● .exe и dll — это скомпилированные версии кода C #, которые также называются сборками.
● .exe — это отдельный исполняемый файл, что означает, что он может выполняться напрямую.
● .dll — это компонент многократного использования, который не может быть запущен напрямую, и для его выполнения требуются другие программы.
person Kedarnath M S schedule 31.05.2016
Для тех, кто ищет краткий ответ,
- Если сборка скомпилирована как библиотека классов и предоставляет типы для использования другими сборками, тогда она имеет расширение ifle .dll (библиотека динамической компоновки), и ее нельзя запускать автономно.
- Аналогичным образом, если сборка скомпилирована как приложение, то она имеет расширение файла .exe ( исполняемый файл) и может выполняться автономно. До .NET Core 3.0 консольные приложения компилировались в файлы .dll и должны были выполняться командой dotnet run или исполняемым файлом хоста. — Источник
person snr schedule 29.11.2019
Разница в DLL и EXE:
1) DLL — это внутрипроцессный компонент, что означает работу в том же пространстве памяти, что и клиентский процесс. EXE — это компонент Out-Process, что означает, что он работает в собственном отдельном пространстве памяти.
2) DLL содержит функции и процедуры, которые могут использовать другие программы (обеспечивает возможность повторного использования), в то время как EXE не может использоваться совместно с другими программами.
3) DLL нельзя запускать напрямую, так как они предназначены для загрузки и запуска другими программами. EXE — это программа, которая выполняется напрямую.
person rahul sharma schedule 04.04.2019
Основное точное различие между DLL и EXE в том, что у DLL нет точки входа, а у EXE есть. Если вы знакомы с c ++, вы можете увидеть, что build EXE имеет функцию входа main (), а DLL нет 🙂
person faya schedule 31.07.2009
Не думаю. Посмотрите здесь msdn.microsoft.com/en-us/library /ms682596(VS.85).aspx — person Aamir; 31.07.2009
Источник: questu.ru
EXE и DLL
Термины EXE и DLL очень распространены в программировании. При кодировании вы можете либо экспортировать свой окончательный проект в DLL, либо в EXE. Термин EXE является сокращенной версией слова исполняемого файла, поскольку он идентифицирует файл как программу. С другой стороны, DLL представляет собой библиотеку динамических ссылок, которая обычно содержит функции и процедуры, которые могут использоваться другими программами.
В базовом пакете приложений вы найдете хотя бы один EXE-файл, который может содержать или не содержать один или несколько файлов DLL. EXE-файл содержит точку входа или часть в коде, где должна запускаться операционная система для запуска приложения. DLL-файлы не имеют этой точки входа и не могут быть выполнены самостоятельно.
Наиболее важным преимуществом DLL-файлов является его повторное использование. DLL-файл может использоваться в других приложениях, если кодер знает имена и параметры функций и процедур в DLL-файле. Из-за этой возможности файлы DLL идеально подходят для распространения драйверов устройств. DLL облегчит связь между аппаратным обеспечением и приложением, которое хочет его использовать. Приложению не нужно было бы знать тонкости доступа к аппаратным средствам до тех пор, пока он способен вызывать функции в DLL.
Запуск EXE будет означать создание процесса для его запуска и памяти. Это необходимо для правильной работы программы. Поскольку DLL не запускается сама по себе и вызывается другим приложением, у нее нет собственного пространства памяти и процесса. Он просто разделяет процесс и пространство памяти приложения, которое его вызывает. Из-за этого DLL может иметь ограниченный доступ к ресурсам, поскольку это может быть использовано самим приложением или другими DLL.
Резюме: 1.EXE — это расширение, используемое для исполняемых файлов, а DLL — расширение для динамической библиотеки ссылок. Файл 2.An EXE может запускаться независимо, в то время как DLL используется другими приложениями. Файл 3.An EXE определяет точку входа, а DLL — нет. 4. DLL-файл может быть повторно использован другими приложениями, в то время как EXE не может. 5.A DLL будет использовать один и тот же процесс и пространство памяти вызывающего приложения, в то время как EXE создает отдельный процесс и пространство памяти.
Источник: ru.esdifferent.com
Расширение exe чем открыть. Как открыть.DLL или.EXE файл в редакторе ресурсов
Привет Всем дорогие читатели! Расширение exe — это исполняемый файл, любая установленная программа имеет это расширение. Некоторые пользователи встречались с ошибкой, когда при запуски приложение, на экране отображалось окно, где система предлагает выбрать, через какую программу открыть этот файл, так же в некоторых случаях система может выдавать другие ошибки. В любом случаи если не открываются exe файлы, есть несколько способ решить эту проблему. Если не знаете что такое расширение имени файлов, то можете прочитать статью « ».
Причина такой ошибки часто вызвана вирусами, но также проблема с открытием исполняемого файла, может быть халатна работа пользователя, который производил изменения в реестре.
Решение
Способ 1. Первым делом проверьте компьютер на вирусы и сразу возникает вопрос, как сканировать компьютер на вирусы, если ни одна программа не запускается? Все очень просто, вам нужно скачать LiveCD (со встроенным антивирусом), после этого записать на CD/DVD диск и загрузиться с него из под Bios. Если у вас нет под рукой интернета, то можете снять жесткий диск и подключить его к другому компьютеру, как дополнительный жесткий диск и уже на другом компьютере проверить его на вирусы.
Если не открываются exe файлы после проверки антивирусом, тогда пробуем способы ниже.
Способ 2. Если на вашем компьютере установлена операционная система Windows XP. Скачиваем файл . Запускаем его, соглашаемся с сообщениями, нажимаем два раза «Да». После этого пробуем запустить программы.
Способ 3. Если установлена операционная система Windows Vista/Windows 7. Скачиваем файл . Открываем файл и вносим изменения в реестр, соглашаясь, нажимаем кнопку «Да» два раза.
Способ 4. Открываем «Мой компьютер», заходим в папку С:Windows, находим файл svchost.com. Теперь надо удалить файл и перегрузить систему. После перезагрузки компьютера заходим в редактор реестра, Пуск-> Выполнить-> вводим «regedit» и нажимаем «OK». В левой части окна отображено дерево, находим ветку HKEY_CLASSES_ROOTexefileshellopencommand и проверяем, чтобы значение было «%1» %* .
Если все равно не открываются программы, то один из выходов, это сделать восстановление системы с помощью установочного диска Windows. Если встречались с такой проблемой, то пишите как ее решили, мне будет интересно выслушать вас. Если все равно не запускаются exe файлы в Windows 7, тогда посмотрите видео, которое находится ниже.
Обязательно посмотрите видео:
Исполняемый файл EXE является приложением Windows либо DOS систем. Такой тип файла может включать в себя самораспаковывающиеся архивы. Имеют невероятно широкое распространение.
Стоит отметить, что в операционных системах Windows, открыть файл.exe можно посредством двойного клика левой клавиши мыши. В прочих платформах Linux или Mac OS запустить рассматриваемое расширение возможно при помощи предварительно установленных на компьютер эмуляторов, к примеру VMware Workstation.
Формат.exe так же поддаётся редактированию, для этого необходимо воспользоваться утилитой на подобии Resource Hacker. Среди пользователей распространены случаи нарушения ассоциации файлов по типам, когда множество ярлыков в формате EXE могут иметь одинаковый внешний вид. При такой ситуации можно воспользоваться приложением Unassociate File Types, способным корректно восстановить ассоциации.
Расширение может являться сценарием программного обеспечения для активации процесса инициализации остальных файлов определенного разработчика в целях последующего исправного запуска той или иной утилиты. Вместе с расширением.exe может содержаться и справочная информация, способствующая соответствующему поиску и загрузке дополнительных компонентов.
Информация в расширении необходима для формирования надлежащей среды Microsoft DOS и системах Виндоус. Если открыть exe файлы как самораспаковывающийся архив, можно отметить факт того, что установка хранимого контента будет произведена в предварительно заданную директорию.
При работе с компьютером нередки ситуации, когда при запуске исполняемых EXE-файлов ничего не происходит или «вылетает» ошибка. Такое же случается и с ярлыками программ. По каким причинам возникает эта проблема, и как ее решить поговорим ниже.
Для нормального запуска EXE-файла необходимы следующие условия:
- Отсутствие блокировки со стороны системы.
- Правильная команда, поступающая из реестра Windows.
- Целостность самого файла и службы или программы, которые его запускают.
Если одно из этих условий не выполнено, мы получаем проблему, о которой идет речь в сегодняшней статье.
Причина 1: блокировка файла
Некоторые файлы, скачанные из интернета, помечаются, как потенциально опасные. Этим занимаются различные защитные программы и службы (Брандмауэр, антивирус и т. п.). Такое же может происходить и с файлами, доступ к которым осуществляется по локальной сети. Решение здесь простое:
Причина 2: ассоциации файлов
По умолчанию Windows настроена таким образом, что каждому типу файлов соответствует программа, с помощью которой его можно открыть (запустить). Иногда, по различным причинам, этот порядок нарушается. К примеру, Вы по ошибке открыли EXE-файл архиватором, операционная система посчитала, что это правильно, и прописала в настройках соответствующие параметры. С этого момента Windows будет пытаться запустить исполняемые файлы, используя архиватор.
Это был наглядный пример, на самом деле причин такого сбоя множество. Чаще всего к ошибке приводит установка программного обеспечения, скорее всего вредоносного, которое вызывает смену ассоциаций.
Исправить ситуацию поможет только правка системного реестра. Пользоваться рекомендациями, приведенными ниже, следует таким образом: выполняем первый пункт, перезагружаем компьютер, проверяем работоспособность. Если проблема осталась, выполняем второй и так далее.
Для начала необходимо запустить редактор реестра. Делается это так: Открываем меню «Пуск» и нажимаем «Выполнить» .
В окне функции пишем команду «regedit» и жмем ОК .
Откроется редактор, в котором мы и будем производить все действия.
- В реестре есть папка, в которую записываются пользовательские настройки для расширений файлов. Ключи, которые там прописаны, являются приоритетными для выполнения. Это значит, что операционная система в первую очередь будет «смотреть» на эти параметры. Удаление папки может исправить ситуацию с неверными ассоциациями.
Далее возможны два варианта развития событий: папки «UserChoice» или названные выше параметры («.exe» и «.lnk» ) отсутствуют в реестре или после перезагрузки проблема сохранилась. В обоих случаях переходим к следующему пункту.
- Снова открываем редактор реестра и на этот раз переходим в ветку HKEY_CLASSES_ROOTexefileshellopencommand
Здесь также возможны два варианта: параметры имеют правильные значения или после перезагрузки файлы не запускаются. Идем дальше.
- Если проблема с запуском EXE-шников осталась, значит, кто-то (или что-то) изменил другие важные ключи реестра. Их количество может быть довольно большим, поэтому стоит воспользоваться файлами, ссылку на которые Вы найдете ниже.
Вы, наверное, заметили, что по ссылке открывается папка, в которой находится три файла. Один из них — reg.reg — понадобится в том случае, если «слетела» ассоциация по умолчанию и для файлов реестра. Если такое произошло, то обычным способом запустить их не получится.
Причина 3: ошибки жесткого диска
Если запуск EXE-файлов сопровождается какой-либо ошибкой, то, возможно, это происходит из-за повреждения системных файлов на жестком диске. Причиной этому могут стать «битые», а значит, и нечитаемые сектора. Такое явление далеко не редкость. Проверить диск на ошибки и исправить их можно с помощью программы HDD Regenerator .
Основная проблема с системными файлами в «битых» секторах – это невозможность их считывания, копирования и перезаписи. В этом случае, если не помогла программа, можно восстановить или переустановить систему.
Имейте в виду, что появление битых секторов на жестком диске – это первый звонок к тому, чтобы заменить его новым, иначе Вы рискуете потерять все данные.
Причина 4: процессор
При рассмотрении данной причины можно провести ассоциацию с играми. Подобно тому, как игрушки не желают запускаться на видеокартах, не поддерживающих определенные версии DirectX, программы могут не стартовать в системах с процессорами, которые не способны выполнять необходимые инструкции.
Наиболее распространенная проблема – отсутствие поддержки SSE2. Выяснить, может ли ваш процессор работать с этими инструкциями, можно с помощью программ CPU-Z или AIDA64 .
В CPU-Z список инструкций приведен здесь:
В AIDA64 нужно перейти в ветку «Системная плата» и открыть раздел «CPUID» . В блоке «Наборы инструкций» можно найти нужную информацию.
Решение данной проблемы одно – замена процессора или всей платформы.