Ausführen von 16-Bit-Code auf einem 64-Bit-Betriebssystem unter Verwendung von Virtualisierung

1268
Nathanael

Ich habe ein Programm namens Parsonstech Hebrew Tutor, das für Windows 98 entwickelt wurde. Offensichtlich wurde es als 16-Bit-Programm kompiliert, obwohl es kein DOS ist, und es verfügt über eine GUI (16-Bit-Windows-Programm). Ich konnte dies unter 32-Bit-Windows XP in einer virtuellen VMware-Maschine ausführen, aber das ist viel Aufwand für das, was sonst ein sehr einfaches ist und es könnte sogar ein portables Programm sein (es ist eines dieser älteren Programme) das läuft von CD ohne Installation ab). Ich möchte nicht wirklich ein ganzes Betriebssystem hochfahren, um dieses Programm auszuführen.

Davon abgesehen habe ich einige Nachforschungen zur DOS-Box durchgeführt und ein Tutorial zur Installation von Windows 3.1 auf der DOS-Box gelesen. Ich glaube jedoch, dass dies ohnehin eine vollständige Systememulation ist, und ich weiß nicht, ob das Programm unter Windows laufen würde 3.1 da es für Windows 98 entwickelt wurde.

Das vielversprechendste, was ich je gesehen habe, ist die qemu User-Mode-Emulation, die behauptet, dass sie nur den Prozessor emulieren und das Programm (auch 16-Bit-Programme) aufrufen kann, ohne eine komplette VM-Umgebung auszuführen. Es sei denn, ich missverstehe es. Ich habe versucht, das Programm wie folgt aufzurufen:

qemu-system-x86_64 HT.exe 

von der Kommandozeile aus, aber es läuft und setzt das Programm zurück und öffnet es nicht. Ich glaube, ich benutze es falsch. Kann jemand helfen? Oder was sind meine Optionen? Idealerweise würde ich gerne das gesamte Programm und die gesamte Virtualisierung erstellen, die zum Ausführen einer tragbaren ausführbaren Datei erforderlich ist, ohne den VMWare-Player auf jedem Computer zu installieren, auf dem ich es verwende. Ich habe nicht den Quellcode, um ihn neu zu kompilieren, und das Unternehmen, das ihn erstellt hat, existiert nicht mehr, aber ich möchte nicht, dass er stirbt!

0
Gemäß den [QEMU-Dokumenten] (http://qemu.weilnetz.de/qemu-doc.html#QEMU-User-space-emulator) wird die Emulation des Benutzermodus nur unter Linux und BSD unterstützt. Ich denke, Sie müssen eine VM booten. Sie können immer versuchen, Windows 95 oder 98 in eine VM zu laden, wenn dies leichter als XP ist (wissen Sie nicht, dass dies der Fall sein wird). heavyd vor 9 Jahren 0
Daran führt kein Weg vorbei. Sie können keine 16-Bit-Programme unter 64-Bit-Windows ohne eine virtuelle Maschine ausführen. Josh vor 9 Jahren 0
Hmm, ich weiß, dass ich Hardware-Virtualisierung verwenden muss, aber die Frage ist, ob ich ein vollständiges System emulieren muss. Windows 95 sollte wesentlich kleiner als XP sein, und ich lese gerade, dass es sogar unter 3.1 laufen kann, also eine Sicherungsoption. Wenn ich es in einer Windows 3.1-VM ausführen möchte, würden Sie die Verwendung einer DOS-Box oder eines anderen Emulators empfehlen? Ist die DOS-Box schneller? Verstehe ich auch die Befehlszeilensyntax von qemu richtig, so dass dieser Befehl das Programm theoretisch im Benutzermodus unter Linux ausführen würde: "qemu-system-x86_64 -cpu kvm32 HT.exe"? Vielen Dank! Nathanael vor 9 Jahren 0
Sie sollten das wegwerfen und ein neues Programm finden. Diese Programme unterstützen nicht einmal Unicode und können später Probleme verursachen phuclv vor 6 Jahren 0

1 Antwort auf die Frage

0
td512

Bei einer 16-Bit-App können Sie das Programm theoretisch in DOSBOX ausführen. Sie würden das brauchen: DOSBOX

Nach der Installation können Sie mount C:\foo Z:den Apps-Ordner in DOSBOX mounten. dann brauchen Sie nur noch: Z:und dann appname.exe. Denken Sie nur daran, durch C:\fooden echten Ordner und appnameden echten exe-Namen zu ersetzen .

Vielen Dank. Es hat zwar eine GUI, ich denke, ich muss Windows 3.x unter DOSbox installieren. Aber ich werde es auf beide Arten ausprobieren, nur für den Fall. Ich habe gelesen, dass Windows 3.x einen relativ geringen Verarbeitungsaufwand in DOSbox hat. Nathanael vor 9 Jahren 0
DOSBOX sollte in der Lage sein, die App mit einer grafischen Benutzeroberfläche zu starten, wie dies bei DOS-Spielen der Fall ist td512 vor 9 Jahren 0
Ich habe es gerade ausprobiert und DOXbox sagt "dieses Programm braucht Fenster." Ich werde später mit Windows 3.x experimentieren. Vielen Dank! Nathanael vor 9 Jahren 0