Я спрашиваю о установочных файлах Windows .exe.
- Есть ли способ узнать, на каких версиях Windows мы можем его запустить?
- Есть ли в качестве примера какая-то информация внутри него, где мы могли бы найти список версий Windows, которые он сертифицировал.
- Есть ли инструмент, который может проанализировать файл .exe и сказать нам, если он совместим или нет для каждой версии Windows?
windows
compatibility
setup
ManWithNoName
источник
источник
Ответы:
Нет, это невозможно.
Хотя есть только несколько случаев, это не легко обнаружить.
Исполняемый файл может быть скомпилирован для конкретной архитектуры, такой как x86 (32-разрядная версия) и x64 (64-разрядная версия), но старые исполняемые файлы могут быть созданы для более старых архитектур, таких как 16-разрядная версия.
Windows XP по-прежнему поддерживала 16-битные приложения в форме эмуляции, но Windows Vista и более поздние версии вообще отказались от поддержки 16-битных приложений.
Из Windows XP существует 64-разрядная версия. Если вы используете 64-разрядную версию своей ОС, вы можете запустить 64-разрядные выпуски исполняемого файла.
Разработчик, который создает версию своего приложения для x64 и x86, может применить это, отображая сообщение об ошибке при попытке запустить версию x86 в операционной системе x64.
Только из исполняемого файла невозможно запросить, для какой архитектуры он был разработан, без использования каких-либо внешних инструментов.
В дополнение к вышесказанному, для программного обеспечения могут потребоваться определенные платформы, такие как .net. Учитывая, что эти платформы обновлены, поддержка старых операционных систем в какой-то момент прекращается, что означает, что этот исполняемый файл больше нельзя запускать в этой старой операционной системе, если у вас уже не установлена более старая версия этой платформы.
Тем не менее, если вы не имеете дело с программным обеспечением, которое потенциально очень старое, вы можете смело предполагать, что программное обеспечение будет работать на Windows 7 и выше. Если вы сомневаетесь, свяжитесь с разработчиком или проверьте их веб-сайт.
источник
С зависимости от.exe вы видите информацию о файлах Exe. Это показывает PE Header, который показывает минимальную версию Windows:
Таким образом, для
USBView.exe
Windows 8.1 SDK в версии x64 требуется 64-битная Windows 5.2, а это Server 2003 или 64-битная Windows XP.если вы видите 16-битный тип процессора, он работает только в 32-битных системах Windows.
источник