Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

MS-DOS Menü

Empfohlene Antworten

Veröffentlicht

Huhu...

Situation: Zwei Rechner, uralt, MS-DOS, 2 Programme zur CNC-Steuerung drauf.

Problem: Anwender dumm :rolleyes: , können nicht exe-Datei angeben um Programm zu starten

Frage: Wie kann man unter DOS ein Auswahlmenü erstellen, das so aussieht:

1. Erstes Programm starten

2. Zweites Programm starten

Also im Win98 Bootdisketten-Style (1. Start Computer with CDROM-Support, 2. Start Computer without...)

Am besten ist es wenn die Programme dann auch wirklich starten wenn man eine Auswahl getroffen hat :D ...

Für alle Antworten schon mal im Vorraus danke... :mod:

Wenn Du es direkt nach dem Booten haben willst, würde ich tatsächlich ein MS-Dos-Bootmenü machen:

[menu]

menuitem=CNC1, Start des Steuerungsprogramms 1

menuitem=CNC2, Start des Steuerungsprogramms 2

menucolor=15,1

menudefault=CNC1, 10

[CNC1]

(Hier steht dann CNC1-spezifisches, wenn vorhanden)

[CNC2]

(Hier steht dann CNC2-spezifisches, wenn vorhanden)

[COMMON]

(Hier stehen noch die gemeinsam benutzten Standardeinträge)

(Hier stehen noch die gemeinsam benutzten Standardeinträge)

:CNC1

cnc1.exe

goto END

:CNC2

cnc2.exe

goto END

:END

Na wenn das jetzt mal funktioniert ;)...

oder Du schreibst ein QBASIC-Programm:

do

cls

auswahl$="0"

print "<1> erstes Programm"

print "<2> zweites Programm"

print "<q> beenden"

input "Ihre Wahl";auswahl$

Select Case auswahl$

 Case "1"

  shell("Befehl zum Starten des ersten Programms")

 case "2"

  shell("Befehl zum Starten des zweiten Programms")

end select

loop until auswahl$="q"

end
(ich hoffe ich hab keine Syntaxfehler reingebracht, konnte es nicht testen und das letzte BASIC-Programm is schon ne weile her) ;) dies kannst Du aus der autoexec.bat mit dem Aufruf:
qbasic /run:menu.bas

starten, wenn du es menu.bas nennst und es im suchpfad ist.

Solltest Du irgendwo noch nen QuickBASIC-Compiler auftreiben, kannst Du das natürlich auch zur exe-Datei umwandeln und so starten...

Der große Vorteil dieser Lösung ist, dass das Menü nach beendigung eines Programmaufrufes von selbst wieder kommt und du nicht den rechner neustarten mußt um wieder an dein Menü zu kommen.

:uli Sehr schön...

Das ist meine config.sys

DEVICE=C:\DOS\HIMEM.SYS

DEVICE=C:\DOS\EMM386.EXE RAM

BUFFERS=15,0

FILES=30

DOS=UMB

LASTDRIVE=E

FCBS=4,0

DEVICEHIGH /L:1,12240 =C:\DOS\SETVER.EXE

DOS=HIGH

COUNTRY=049,850,C:\DOS\COUNTRY.SYS

DEVICEHIGH /L:1,15824 =C:\DOS\DISPLAY.SYS CON=(EGA,,1)

...das meine autoexec.bat:

LH /L:0;1,45968 /S C:\DOS\SMARTDRV.EXE /X

@ECHO OFF

PROMPT $p$g

PATH C:\DOS

SET TEMP=C:\DOS

MODE CON CODEPAGE PREPARE=((850) C:\DOS\EGA.CPI)

MODE CON CODEPAGE SELECT=850

LH /L:1,17232 KEYB GR,,C:\DOS\KEYBOARD.SYS

cls

Die Programme werden mit tx8d.bat und k432.bat (nicht exe wie oben gesagt) gestartet. Wäre dir sehr verbunden, wenn du mir mal die fertigen Dateien hier postest...

Also so schwer isses ja jetzt nicht ;)

Config.sys:


[menu]

menuitem=CNC1, Start des Steuerungsprogramms 1

menuitem=CNC2, Start des Steuerungsprogramms 2

menucolor=15,1

menudefault=CNC1, 10


[COMMON]

DEVICE=C:\DOS\HIMEM.SYS

DEVICE=C:\DOS\EMM386.EXE RAM

BUFFERS=15,0

FILES=30

DOS=UMB

LASTDRIVE=E

FCBS=4,0

DEVICEHIGH /L:1,12240 =C:\DOS\SETVER.EXE

DOS=HIGH

COUNTRY=049,850,C:\DOS\COUNTRY.SYS

DEVICEHIGH /L:1,15824 =C:\DOS\DISPLAY.SYS CON=(EGA,,1)

Autoexec.bat:

LH /L:0;1,45968 /S C:\DOS\SMARTDRV.EXE /X

@ECHO OFF

PROMPT $p$g

PATH C:\DOS

SET TEMP=C:\DOS

MODE CON CODEPAGE PREPARE=((850) C:\DOS\EGA.CPI)

MODE CON CODEPAGE SELECT=850

LH /L:1,17232 KEYB GR,,C:\DOS\KEYBOARD.SYS

cls



:CNC1

c:

cd c:\cnc1

tx8d.bat

goto END



:CNC2

c:

cd c:\cnc2

k432.bat

goto END


:END

Edit: Achja, die Pfade zu den CNC-Steuerprogrammen (c:\cnc1, c:\cnc2) musst Du noch anpassen...

Das ist der leichteste Weg... :D

[menu]

menuitem=CNC1,Start des Steuerungsprogramms 1

menuitem=CNC2,Start des Steuerungsprogramms 2

menucolor=15,1

menudefault=CNC1,10

[COMMON]

DEVICE=C:\DOS\HIMEM.SYS

DEVICE=C:\DOS\EMM386.EXE RAM

BUFFERS=15,0

FILES=30

DOS=UMB

LASTDRIVE=E

FCBS=4,0

DEVICEHIGH /L:1,12240 =C:\DOS\SETVER.EXE

DOS=HIGH

COUNTRY=049,850,C:\DOS\COUNTRY.SYS

DEVICEHIGH /L:1,15824 =C:\DOS\DISPLAY.SYS CON=(EGA,,1)

Bei dieser Version bringt er beim booten einen Fehler in Zeile 2 und 3, muss das CNC1 und CNC2 nicht nochmal definiert werden, wie in deiner ersten Version???

Ms-dos 6.22

Hab mal ein bissl rumgespielt, ich hatte recht, so gehts:

[menu]

menuitem=cnc_eins, Starte eins

menuitem=cnc_zwei, Starte zwei

menucolor=15,1

menudefault=cnc_eins, 10

[cnc_eins]

[cnc_zwei]

[COMMON]

DEVICE=C:\DOS\HIMEM.SYS

DEVICE=C:\DOS\EMM386.EXE RAM

BUFFERS=15,0

FILES=30

DOS=UMB

LASTDRIVE=E

FCBS=4,0

DEVICEHIGH /L:1,12240 =C:\DOS\SETVER.EXE

DOS=HIGH

COUNTRY=049,850,C:\DOS\COUNTRY.SYS

DEVICEHIGH /L:1,15824 =C:\DOS\DISPLAY.SYS CON=(EGA,,1)

Musste halt CNC1 und CNC2 definieren, obwohls da nix zu definieren gibt (oder so. :floet: )...

Jetzt gehts auf jeden Fall, vielen Dank für die freundliche Unterstützung... :e@sy

  • 2 Jahre später...

'ausgrabgrabgrab'

Abend,

das gute an dem fred, er bringt es so ziemlich genau auf den punkt, was auch ich gerne in die praxis umzusetzen versuchen würde, wäre da nicht dieses kürzel ms, welches mich in eine rechtliche grauzone drängen würde wonach ich nu echt, kein verlangen hab.

Also liebe gemeinde der opensourcefraktion, würde sich das oben angewandte auch in fdos realisieren lassen (klar geht das, nur ... wie)

mit der kleinen Abweichung: das die disk auch unabhängig von sonstigen vorinst. os ihr werk verrichtet.

Alles wat hilft pray.gif

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.