Frage ist gelöstDOS auf USB-Stick, durch Menü .bat öffnen funktioniert nicht.
15.07.2009
08:25:01 Uhr2758 Aufrufe
9 Antworten
08:25:01 Uhr
9 Antworten
Noch nicht bewertet
Habe auf einem USB-Stick ein Bootfähiges DOS(über eine Startdiskette die unter Vista erstellt wurde) installiert und will über ein Menü eine .Bat datei öffnen, dies funktioniert auch wunderbar mit einer selbst geschriebenen "Hello World".bat, aber sobald ich auf die wirkliche .bat verlinke, sagt er mir bad command or file...
So also, ich hatte bevor ich dieses Projekt begonnen habe keine Erfahrung mit .bats geschweigeden mit DOS, deshalb wäre es hilfreich mir auch die kleinsten Sachen zu erklären die ich falsch gemacht haben könnte.
Also ich habe einen 256MB großen USB-Stick, auf dem ich über ein Virtuelles Diskettenlaufwerk eine Startdiskette unter Vista erstellt habe.Natürlich Fat.
Auf diesem habe ich nun meine Autoexec.bat so formatiert:
Meine Config.sys sieht folgendermaßen aus:
Zur kurzen Erklärung:
Der USB-Stick ist eine Verbindung von mehreren Sticks, man muss nämlich erst Bios Flashen ,dann die BMC installieren und dann Bios auf die Finale Version flashen. Um hierbei nicht immer 3 Sticks mitnehmen zu müssen, soll mein "Menü-Stick" entstehen.
Also jetzt zu meinem Problem, er öffnet die umbenannten autoexec.bats der anderen USB-Sticks nicht die jeweils in einem Unterortner, mit dem restlichen Inhalt der alten USB-Sticks liegen. Wenn ich jedoch in den Unterortner eine selbstgeschriebene .bat schreibe und auf diese verlinke funktioniert es einwandfrei. Es kommt dabei kein "bad command or file ihrgendwas"
Falls ich noch was wichtiges vergessen habe fragt einfach nach.
Gruß Hese
Also ich habe einen 256MB großen USB-Stick, auf dem ich über ein Virtuelles Diskettenlaufwerk eine Startdiskette unter Vista erstellt habe.Natürlich Fat.
Auf diesem habe ich nun meine Autoexec.bat so formatiert:
01.
goto %config% 02.
03.
:BIOS1 04.
C:\BiosV1.18\Bios1.bat 05.
goto Ende 06.
07.
:BMC 08.
C:\BMCV3.60\3.60.bat 09.
goto Ende 10.
11.
:BIOS2 12.
C:\BiosV1.21\1.21.BAT 13.
goto Ende 14.
15.
:EndeMeine Config.sys sieht folgendermaßen aus:
01.
[menu] 02.
menuitem=BIOS1, BiosV1.18 installieren. 03.
menuitem=BMC, BMCV3.60 installieren. 04.
menuitem=Bios2, BiosV1.21 installieren. 05.
menucolor=15,4 06.
menudefault=BOS1, 100 07.
08.
09.
[BIOS1] 10.
11.
[BMC] 12.
13.
[BIOS2] 14.
15.
[COMMON]Zur kurzen Erklärung:
Der USB-Stick ist eine Verbindung von mehreren Sticks, man muss nämlich erst Bios Flashen ,dann die BMC installieren und dann Bios auf die Finale Version flashen. Um hierbei nicht immer 3 Sticks mitnehmen zu müssen, soll mein "Menü-Stick" entstehen.
Also jetzt zu meinem Problem, er öffnet die umbenannten autoexec.bats der anderen USB-Sticks nicht die jeweils in einem Unterortner, mit dem restlichen Inhalt der alten USB-Sticks liegen. Wenn ich jedoch in den Unterortner eine selbstgeschriebene .bat schreibe und auf diese verlinke funktioniert es einwandfrei. Es kommt dabei kein "bad command or file ihrgendwas"
Falls ich noch was wichtiges vergessen habe fragt einfach nach.
Gruß Hese
empreality schreibt am 15.07.2009 um 08:46:47 Uhr
Du postest leider nicht den Inhalt der BATs in den UnterorDnern.
Änder diese Zeile
mal in
Änder diese Zeile
01.
C:\BiosV1.18\Bios1.bat mal in
01.
cd c:\BiosV1.18 02.
Bios1.bat
SlainteMhath schreibt am 15.07.2009 um 09:02:27 Uhr
Moin,
Ist der stick wirklich als Laufwerk C: im System? Sollte das nicht, nachdem er ein Floppy Emuliert A. oder B: sein?
Nebenbei;
in Deiner config.sys hast Du in Zeile 6 einen Tippfehler BOS1 statt BIOS1
lg,
Slainte
Ist der stick wirklich als Laufwerk C: im System? Sollte das nicht, nachdem er ein Floppy Emuliert A. oder B: sein?
Nebenbei;
in Deiner config.sys hast Du in Zeile 6 einen Tippfehler BOS1 statt BIOS1
lg,
Slainte
hesekaia schreibt am 15.07.2009 um 09:35:24 Uhr
01.
02.
rem ################################################################ 03.
rem # This batch file installs a new System BIOS in the Flash Memory. 04.
rem # It supports recovery and normal flash update. 05.
rem # 06.
rem # Only Primergy D2244 is supported. 07.
rem # _REV = 118h _TREV = @ 08.
rem # 09.
rem # Copyright (c) 2006 Fujitsu Siemens Computers 10.
rem ################################################################ 11.
rem 12.
CLS 13.
SET BOARD=2244 14.
SET SUBID=_00 15.
type FLASHDSK.ETT 16.
17.
rem ###### check board number ###################################### 18.
actions checkdnumber %BOARD% 19.
if NOT errorlevel 1 goto step2 20.
rem wrong board number 21.
beep1 22.
beep1 23.
echo System does not match this flash-diskette 24.
goto dosexit 25.
26.
rem ###### check recovery flash #################################### 27.
:step2 28.
testrec 29.
if errorlevel 1 goto recflags 30.
SET FLAGS=/NOP6 31.
goto step3 32.
33.
:recflags 34.
@rem "Disable Watchdog during Recovery Flash" 35.
@rem @ECHO "Enter Post" 36.
@ipmi_cmd -KCSIO=0x0CA2 -exec=0xB8,0xF1,0x80,0x28,0x00,0x08,0x01 >nul 37.
if errorlevel 0 goto next 38.
goto recstart 39.
40.
:next 41.
@rem @ECHO "Send Postcode BB (for Bootblock) to BMC" 42.
@ipmi_cmd -KCSIO=0x0CA2 -exec=0xB8,0xF1,0x80,0x28,0x00,0x0A,0xBB >nul 43.
@rem @ECHO "Set (Stop) BIOS/POST Watchdog, 1. try" 44.
@ipmi_cmd -KCSIO=0x0CA2 -exec=0x18,0x24,0x82,0x00,0x00,0x00,0xff,0xff >nul 45.
@rem @ECHO "Reset Watchdog" 46.
@ipmi_cmd -KCSIO=0x0CA2 -exec=0x18,0x22 >nul 47.
@rem @ECHO "Get Watchdog 1." 48.
@rem @ipmi_cmd -KCSIO=0x0CA2 -exec=0x18,0x25 49.
@rem @ECHO "Set (Stop) BIOS/POST Watchdog" 50.
@ipmi_cmd -KCSIO=0x0CA2 -exec=0x18,0x24,0x82,0x00,0x00,0x00,0xff,0xff >nul 51.
@rem @ECHO "Get Watchdog 2." 52.
@rem @ipmi_cmd -KCSIO=0x0CA2 -exec=0x18,0x25 53.
54.
:recstart 55.
rem set flags for recovery flag 56.
SET FLAGS=/NOP6 /y 57.
goto step3 58.
59.
rem ###### start flash ############################################# 60.
:step3 61.
echo updating SYSTEM BIOS 62.
bioflash d%BOARD%%SUBID%.ocf %FLAGS% 63.
if errorlevel 1 goto flasherr 64.
rem flash finished without an error 65.
beep1 66.
echo. 67.
echo System restart required. 68.
echo. 69.
echo Please remove diskette as soon as screen is cleared 70.
pause 71.
echo System is rebooting now ... Please remove diskette 72.
reboot.exe 73.
74.
rem ###### flash error handler ##################################### 75.
:flasherr 76.
testrec 77.
if errorlevel 1 goto dosexit 78.
rem retry flash (not for recovery mode) 79.
beep1 80.
beep1 81.
echo SYSTEM BIOS update reported errors 82.
echo. 83.
echo r : Retry SYSTEM BIOS update 84.
echo t : Terminate Flashupdate (default after 60 sec) 85.
choice /c:tr /t:t,60 86.
if errorlevel 2 goto step2 87.
if errorlevel 1 goto dosexit 88.
89.
rem ###### exit part; infinite loop for recovery flash ############# 90.
:dosexit 91.
berk 92.
testrec 93.
if errorlevel 1 goto dosexit 94.
95.
rem ###### end of file ############################################# 96.
Die geänderte Zeile funktioniert auch nicht.
hesekaia schreibt am 15.07.2009 um 09:38:10 Uhr
Ja er ist C: sonst würde ja meine selbstgeschriebene Datei auch nicht klappen ;).
Nein das hast du falsch verstanden ich habe nur ein Floppy Emuliert um eine Startdiskette zu bekommen.
Stimmt danke, hab mitlehrweile so viel geändern und versucht ...
Gruß Hese
Nein das hast du falsch verstanden ich habe nur ein Floppy Emuliert um eine Startdiskette zu bekommen.
Stimmt danke, hab mitlehrweile so viel geändern und versucht ...
Gruß Hese
empreality schreibt am 15.07.2009 um 09:45:25 Uhr
Was passiert wenn du das Batch manuell aufrufst ?
empreality schreibt am 15.07.2009 um 10:27:46 Uhr
Die Programme die da aufgerufen werden wie beep1, testrec, berk etc sind in den Ordnern aber vorhanden?
hesekaia schreibt am 15.07.2009 um 10:33:08 Uhr
Ja sind in dem Unterortner vorhanden, sind alles .exe.
edit:
Lösung:
1. Autoexec.bat sind von "Natur" aus versteckt, d.h. die Datei umbenennen reicht nicht, man muss eine neue erstellen und den Inhalt reinkopieren. Da sie versteckt war konnte ich sie auch nicht aufrufen.
2. Der zweite Fehler den ich gemacht habe, ist das ich . im Dateinamen verwendet habe, womit DOS nicht wirklich umgehen kann. Also statt BiosV1.21.bat BiosV121 und es funktioniert.
So um das rauszufinden habe ich jetzt Stunden verschwendet :D....
gruß hese
edit:
Lösung:
1. Autoexec.bat sind von "Natur" aus versteckt, d.h. die Datei umbenennen reicht nicht, man muss eine neue erstellen und den Inhalt reinkopieren. Da sie versteckt war konnte ich sie auch nicht aufrufen.
2. Der zweite Fehler den ich gemacht habe, ist das ich . im Dateinamen verwendet habe, womit DOS nicht wirklich umgehen kann. Also statt BiosV1.21.bat BiosV121 und es funktioniert.
So um das rauszufinden habe ich jetzt Stunden verschwendet :D....
gruß hese












