Supportnet Computer
Planet of Tech

Supportnet / Forum / BS-Sonstige

wie zum DOS-Startmenü zurückkehren?





Frage

Hallo allerseits, via Startdiskette möchte ich per Menu, Submenü verschiedene Prgramme ausführen. Das klappt soweit auch bestens. Nach einigen Programmpunkten hätte ich aber gern die erneute Anzeige des Starmenüs (ohne Reboot), was bisher nicht klappt. Hat jemand von Euch ne schlaue Idee, wie ich das anstellen muss? Vielen Dank

Antwort 1 von ted

Hi,

falls es sich um eine Bat-Datei handelt, kann sie am Ende nochmal gestartet werden. (Rekursion müsste möglich sein)

mfg
ted

Antwort 2 von manei

Hallo,

wenn Du mit Startdiskette startest wird die Startauswahl über die Datei Config.sys ausgerufen.

Diese Datei kann man nicht so einfach ein weiteres mal aufrufen, da es eine Startdatei ist.

Sag uns mal genau, was Du damit bezwecken willst, vielleicht gibt es dafür dann auch eine Lösung.

Führst Du die Programme durch manuelle Eingabe aus oder per Batch?.

MfG maneich



Antwort 3 von Klaus K

Hallo,

@ted
> (Rekursion müsste möglich sein)
wie realisiere ich das?

@maneich
>...wird die Startauswahl über die Datei Config.sys >ausgerufen.Diese Datei kann man nicht so einfach >ein weiteres mal aufrufen...

genau das ist mein Problem (bisher)und dafür suche ich eine Lösung.

>Sag uns mal genau, was Du damit bezwecken willst...

ich habe hier öfter mal abgeschmierte Kisten... häufig ist ein Image schneller wieder aufgespielt als alles andere
Bisweilen sind aber noch Dateien vorher zu sichern, bspw. via Netz
im Grunde geht es nur um den guten, alten Norton Commander. Den will ich (z.B.) vor dem Widerherstellen von Images aufrufen und danach halt z.B. das ImageProgramm ohne Reboot starten können.

>Führst Du die Programme durch manuelle Eingabe aus oder per Batch

per Batch; aus der autoexec.bat werden jeweils verschiedene andere Batch-Dateien mit unterschiedelichen Startparametern aufgerufen

ich danke Euch erstmal

Antwort 4 von manei

Hallo,

eine Rekursion bzw. ein nochmaliger Aufruf der Batch am Ender gleicher Batch machst Du mit

call %0 oder nur %0. Mit call bleibt der erste Aufruf bestehen und ohne wird der erste Aufruf einer Batch mit dem zweiten Aufruf beendet.

Aber wenn die "Kiste abschmiert" ist eben immer die Frage, ob Du den PC bzw. DOS noch steuern kannst oder ob er/es sich festgehakt hat.

Hat er sich festgehakt und Du kommst nicht mehr aus den Programm heraus sehe ich eigentlich nur einen Neustart für gegeben.

Kannst du noch steuern, kannst Du doch einfach den Norton Commander aufrufen mit

Start LW:\Verz.\Dateinamen.ext

Hier natürlich den genauen Pfad,Namen und Endung eingeben.

Ich würde auch in der Autoexec.bat nur eine übergeordnete Batch starten, in der ich alle anderen Batchdateien dann aufrufe und zwar am Ende der Autoexec.bat und ohne call.

MfG maneich



Antwort 5 von Klaus K

Hallo Maneich,

>eine Rekursion bzw. ein nochmaliger Aufruf der >Batch am Ender gleicher Batch machst Du mit
>call %0 oder nur %0. Mit call bleibt der erste >Aufruf bestehen und ohne wird der erste Aufruf >einer Batch mit dem zweiten Aufruf beendet.

Aber wo füge ich call ein: in die autoexec.bat, die die verschiedenen Sprungmarken für die einzelnen Menü-, Submenüpunkte enthält, oder in die "Menü-Batchs", die für Ausführung der einzelnen Submenüpunkte verantwortlich sind?

Das abstrakte Muster ist so:
autoexec.bat, config.sys auslesen, Menü anzeigen; ausgewählt wird bspw. Menüpunkt 1, der ein submenü enthält, dort wird Submenüpunkt 1.1 ausgewählt, der in der Datei 1.1.bat abgearbeitet wird. Ist der Menüpunkt abgearbeitet (hier bspw. der NC) und wird beendet komme ich bisher nicht zu einer erneuten Anzeige des Startmenüs, das will ich aber (Faulheit verleiht Flügel)



>Aber wenn die "Kiste abschmiert" ist eben immer >die Frage, ob Du den PC bzw. DOS noch steuern >kannst oder ob er/es sich festgehakt hat.

Das ist kein Problem, ein (!) Reboot ist ja meistens eh fällig...und wie gesagt alles soll ein kleines Paket bilden, das sich fix und fertig auch rasch auf beliebige Medien spielen lässt,
so dass bspw. Image und Anwendung zur dessen Wiederherstelleung auf einer Scheibe Platz haben.


>Kannst du noch steuern, kannst Du doch einfach >den Norton Commander aufrufen mit

>Start LW:\Verz.\Dateinamen.ext

es geht nicht um den Start sondern um die Rückkehr, bspw. vom NC zum Menü


>Ich würde auch in der Autoexec.bat nur eine übergeordnete Batch starten, in der ich alle anderen >Batchdateien dann aufrufe und zwar am Ende der Autoexec.bat und ohne call.

Warum? Welchen Vorteil hat das?

Antwort 6 von manei

Hallo,

da die Arbeit mit den beiden Dateien Autoexec.bat und Config.sys sehr differnziert zu sehen ist und ich Deine Problemstellung nur allgemein kenne, kann ich dir nur allgemein antworten.

Zunächst aber eine Frage: Welches System nutzt Du?

Zu call %0 bzw. %0:
Für Dich am einfachsten zu verstehen ist glaube ich folgendes. Erstelle eine Batch, nenne sie z.B. test.bat und schreibe hier rein
@echo off
cls
echo %0
pause
cls

Du wirst sehen, daß der echo-Befehl genau diese Batch anzeigt. D.h. also ohne echo bzw. mit call wird dies als Aufruf genau der .bat-Datei interpretiert in der dieser Befehl aufgeführt ist.

Zu deinem abstrakten Muster:
Du müßtest Dir dann eine config.sys erstellen, in der Du zwar auswählst was Du als erstes tun willst, aber alles laden was möglicherweise noch danach kommt. Auch in der Autoexec.bat alles laden, was möglicherweise gebraucht wird.

Dann baust Du Dir eine Batch auf, die genau diese Programme auswählt und aufruft, die Du verwenden willst; springst danach zu einer Batch die genau die gleichen Variablen und Abfragen stellt wie in der Config.sys und springst danach wieder zur 1. Batch zurück.

Das erklärt auch schon Deine letzte Frage, was bringt das. Außerhalb diese beiden Dateien hast du mehr Möglichkeiten und ersparst Dir viel
Fehler.

MfG maneich



Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: