Gibt es eine Möglichkeit, aus einer EXE-Datei herauszufinden, welche Windows-Version (en) wir ausführen können?

479
ManWithNoName

Ich frage nach Windows .exe-Setupdateien.

  • Gibt es eine Möglichkeit zu wissen, auf welchen Windows-Versionen wir es ausführen können?
  • Gibt es beispielsweise einige Informationen, in denen wir die Liste der Windows-Versionen finden können, für die es zertifiziert ist.
  • Gibt es ein Tool, das eine .exe-Datei analysieren kann und uns mitteilen kann, ob es für jede Windows-Version kompatibel ist oder nicht?
2
Die richtigste Lösung ist, sich die Website des Entwicklers oder die beigefügte Beschreibung anzusehen. Akina vor 5 Jahren 0
Dies ist eine manuelle Lösung für den Fall, dass die Datei aktuell genug ist, um auf der Website des Entwicklers verfügbar zu sein. Es braucht viel Suchzeit, falls wir viel älteres Programm haben, das wir gerne prüfen würden. Ich suche eine "automatische" Lösung. ManWithNoName vor 5 Jahren 1
Windows bietet eine sehr gute Unterstützung für die Rückwärtskompatibilität. In den meisten Fällen verwenden Sie einfach das neueste Windows phuclv vor 5 Jahren 2

2 Antworten auf die Frage

2
LPChip

Nein das ist nicht möglich.

Obwohl es nur wenige Fälle gibt, ist es nicht leicht herauszufinden.

Eine ausführbare Datei kann für eine bestimmte Architektur wie x86 (32-Bit) und x64 (64-Bit) kompiliert werden. Für ältere Architekturen wie 16-Bit können jedoch alte ausführbare Dateien erstellt werden.

Windows XP hatte immer noch Unterstützung für 16-Bit-Anwendungen in Form einer Emulation, aber Windows Vista und höher brachen die Unterstützung für 16-Bit-Anwendungen ab.

Unter Windows XP gibt es eine 64-Bit-Version. Wenn Sie eine 64-Bit-Version Ihres Betriebssystems ausführen, können Sie x64-Editionen einer ausführbaren Datei ausführen.

Ein Entwickler, der eine x64- und x86-Version seiner App erstellt, kann dies erzwingen, indem er einen Fehler anzeigt, wenn Sie versuchen, eine x86-Version auf einem x64-Betriebssystem auszuführen.

Nur von der ausführbaren Datei aus kann nicht abgefragt werden, für welche Architektur sie entworfen wurde, ohne externe Tools zu verwenden.

Darüber hinaus erfordert Software möglicherweise bestimmte Frameworks, z. B. .net. Da diese Frameworks aktualisiert werden, wird die Unterstützung für ältere Betriebssysteme irgendwann eingestellt, was bedeutet, dass die ausführbare Datei nicht mehr auf diesem älteren Betriebssystem ausgeführt werden kann, es sei denn, Sie haben bereits eine ältere Version dieses Frameworks installiert.

Abgesehen von Software, die möglicherweise wirklich alt ist, können Sie davon ausgehen, dass die Software unter Windows 7 oder höher ausgeführt wird. Wenden Sie sich im Zweifelsfall an den Entwickler oder überprüfen Sie dessen Website.

1
magicandre1981

Bei „ Datei.exe“ sehen Sie Informationen zu den Exe-Dateien. Es zeigt den PE-Header, der die Mindestversion von Windows zeigt:

Das USBView.exeWindows 8.1-SDK in der x64-Version erfordert also 64Bit Windows 5.2, und dies ist Server 2003 oder 64Bit Windows XP.

Wenn 16Bit als CPU-Typ angezeigt wird, läuft es nur auf 32Bit-Windows-Systemen.