Brigadeleiter Geschrieben 4. August 2005 Teilen Geschrieben 4. August 2005 Huhu... Situation: Zwei Rechner, uralt, MS-DOS, 2 Programme zur CNC-Steuerung drauf. Problem: Anwender dumm , 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 ... Für alle Antworten schon mal im Vorraus danke... :mod: Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Monty82 Geschrieben 4. August 2005 Teilen Geschrieben 4. August 2005 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 ... Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
mias Geschrieben 4. August 2005 Teilen Geschrieben 4. August 2005 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. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Brigadeleiter Geschrieben 4. August 2005 Autor Teilen Geschrieben 4. August 2005 :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... Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Monty82 Geschrieben 4. August 2005 Teilen Geschrieben 4. August 2005 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... Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Brigadeleiter Geschrieben 4. August 2005 Autor Teilen Geschrieben 4. August 2005 Das ist der leichteste Weg... [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??? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Monty82 Geschrieben 4. August 2005 Teilen Geschrieben 4. August 2005 Welche MS-Dos-Version benutzt Ihr? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Brigadeleiter Geschrieben 4. August 2005 Autor Teilen Geschrieben 4. August 2005 Ms-dos 6.22 Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Monty82 Geschrieben 4. August 2005 Teilen Geschrieben 4. August 2005 Dann mach aus Zeile 2 und 3 mal: menuitem=CNC1 menuitem=CNC2 Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Brigadeleiter Geschrieben 4. August 2005 Autor Teilen Geschrieben 4. August 2005 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 Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
!TSE Geschrieben 18. April 2008 Teilen Geschrieben 18. April 2008 '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 Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.