Wie kann ich eine ausführbare (16-Bit) .COM-Datei ausführen, die in .COS umbenannt wurde?

1187
max16bit

Ich versuche, ein paar alte 16-Bit-DOS-Programme von einer Windows XP-DOS-Eingabeaufforderung aus auszuführen. Das Problem ist, dass die Dateierweiterungen von .COM in .COS umbenannt wurden und auf schreibgeschützten Datenträgern gespeichert sind und ich sie nicht kopieren kann (spezielle Umgebung).

Irgendwelche Tipps, wie man solche Dateien trotz der seltsamen Erweiterung aufruft? Wenn es sich um 32-Bit-EXE-Dateien gehandelt hätte, wäre es kein Problem gewesen, wenn sie auch ohne die entsprechenden Erweiterungen ausgeführt würden. Mit diesen COM-Dateien kann ich jedoch keine Möglichkeit finden, sie auszuführen.

4
Sie sollten weitere Details zur Umgebung hinzufügen, insbesondere zu Ihrer "speziellen Umgebung". Robert vor 12 Jahren 0
Finden Sie heraus, wie Sie eine neue Kopie der Medien brennen können. Sie wurden auf irgendeine Weise erstellt. Ramhound vor 12 Jahren 0

3 Antworten auf die Frage

4
TheBlastOne

Schau mal, was ich machen kann :-) (habe das in einer XP-DOS-Box gemacht):

C:\>md test  C:\>cd test  C:\test>xcopy c:\windows\system32\tree.com C:\windows\system32\tree.com 1 File(s) copied  C:\test>md t1  C:\test>md t2  C:\test>tree Volume in drive C is OSDisk Volume Serial Number is 0006EFC4 9654:5A1E C:. ├───t1 └───t2  C:\test>ren tree.com tree.cos  C:\test>tree.cos Volume in drive C is OSDisk Volume Serial Number is 0006EFC4 9654:5A1E C:. ├───t1 └───t2  C:\test>ren tree.cos newname.cos  C:\test>newname.cos Volume in drive C is OSDisk Volume Serial Number is 0006EFC4 9654:5A1E C:. ├───t1 └───t2  C:\test> 

Sie können natürlich cos-Dateien ausführen, wenn Sie die Erweiterung explizit an der DOS-Eingabeaufforderung benennen.

Nee; das ist falsch**. Der Grund dafür ist, dass `tree.com` eigentlich keine .COM-Datei ist. Es handelt sich um eine .EXE-Datei mit der Erweiterung" .com "(aus Gründen der Abwärtskompatibilität (wie fast alle .COM-Dateien in Windows) jetzt ein paar Versionen). Wenn es sich um eine echte .COM-Datei handelt, wurde sie mit dem Standardprogramm "all-files" geöffnet. Wenn keines festgelegt ist, wurde das Dialogfeld * Öffnen mit * angezeigt. Synetech vor 11 Jahren 4
Wahr. Cool. Entkühlen Sie, dass ein einfacher Typ tree.com enthüllt, dass eine MZ-exe-Signatur vorliegt. Doh. Was wäre also die richtige Antwort? "Überhaupt nicht"? TheBlastOne vor 11 Jahren 0
4
LawrenceC

OK. Ich habe es herausgefunden. Ich denke sowieso. Dies macht sich die Tatsache zunutze, dass .COM-Dateien aus DOS nur binäre Images mit einem 0x100-Byte-Header sind, wobei die ersten paar Bytes JMP 0x0100(hoffentlich habe ich recht) und das alte DOS-Hilfsprogramm, debugdas in XP existiert.

  • Eingabeaufforderung öffnen
  • cd in ein Verzeichnis mit .COS-Dateien
  • debug [eingeben]
  • Sie sind jetzt an der debug.exeEingabeaufforderung (nur ein Bindestrich)
  • Typ n- entsprechend ersetzen. Zum Beispiel für FILE.COS-Typ nfile.cos, dann [Eingabe]
  • Geben Sie l(zum Laden) und dann [Eingabe] ein
  • Geben Sie g(for go) und dann [enter] ein.

Lass mich wissen, wie das geht. Ich habe geladen, C:\windows\system32\tree.comaber offensichtlich ist es wirklich eine .EXE(besagt, dass dies nicht im DOS-Modus ausgeführt werden kann). Viel Glück.

(Übrigens, ich habe gerade das Zeug über tree.com gelesen, whoops!)

Ja, das könnte den Trick tun. Natürlich ist es ein echter Schmerz und einige gravierende Einschränkungen, zum Beispiel, dass Sie nicht mit einer Batch-Datei oder dem * Run * -Dialogfeld ausgeführt werden können. Sie nicht sicher kopieren zu können, ist frustrierend, nicht wahr? `:-(` Synetech vor 11 Jahren 0
1
Synetech

Nein, ich fürchte, unter den von Ihnen beschriebenen Umständen ist es nicht möglich, das zu tun, was Sie wollen. Ausführbare Dateien werden speziell behandelt (aufgrund ihrer Fähigkeit, ein System zu infizieren), so dass Windows keine alten Dateien als ausführbare Datei ausführen kann.

Die PATHEXTUmgebungsvariable teilt Windows mit, welche Programme "ausführbar" sind und "ausgeführt" werden können, es gibt jedoch Einschränkungen. Öffnen Sie eine Eingabeaufforderung, fügen Sie sie .cosan pathextund versuchen Sie, eine der .cosDateien auszuführen :

> set pathext=.cos;%pathext% > foobar.cos 

Sie werden feststellen, dass entweder das Standardprogramm "Alle Dateien" ausgeführt wird oder wenn keines konfiguriert ist, dass das Dialogfeld " Öffnen mit" angezeigt wird. Warum? Weil Windows die Möglichkeiten einschränkt, die aus Sicherheitsgründen ausgeführt werden können. Sie sollten in der Lage sein, .cosDateien als ausführbare Datei (wie .py, .plusw.) zu registrieren, aber selbst dann ist es möglicherweise nicht möglich, da eine .pyoder eine .plDatei tatsächlich nur ein Dokument ist, das von einem Programm geöffnet wird, und nicht eine tatsächlich ausführbare Datei .

Eine andere Option könnte darin bestehen, zu versuchen, eine Zuordnung zu erstellen, in der Sie dem System mitteilen, dass .cosDateien vorhanden sind comfiles. Der soeben ausgeführte Schnelltest funktionierte jedoch nicht und Windows beschwerte sich, dass es sich nicht um eine ausführbare Datei handelt und der Zugriff wurde zurückgewiesen .