Frage zu einer Batchdatei

Seite 1 von 3 - Forum: Coding Stuff auf overclockers.at

URL: https://www.overclockers.at/coding-stuff/frage_zu_einer_batchdatei_115600/page_1 - zur Vollversion wechseln!


haemma schrieb am 26.05.2004 um 09:19

Hi!

Ich hab mir eine Batchdatei geschrieben die wie folgt ausschaut:

@ECHO OFF

:M_VB_NET2003
REM ------------------------------------------
ECHO Starting VS_.NET 2003 Install Please be patient...
CALL C:\Temp\setup\setup.exe /unattendfile \\server\share\Allgemein\MSDN\TEST\Unattend_USER.ini
ECHO DONE!
REM ------------------------------------------
:END

:UNZIP_MSDN
REM ------------------------------------------
ECHO Unzipping MSDN Setup Files for USER, please wait...
Start /W C:\Progra~1\Powerarchiver\Powerarc.exe -e C:\net\net.zip C:\Temp\test
IF ERRORLEVEL 0 goto MSDN
REM ------------------------------------------

:MSDN
REM ------------------------------------------
ECHO Starting MSDN Library Install...
Start /W C:\temp\MSDN\setup.exe /q ADDLOCAL=ALL
REM ------------------------------------------
:END

ECHO Visual Studio dot NET 2003 Install successfully completed...
EXIT


Funktioniert auch schön nur gibts ein gröberes Problem und zwar:
Die Batchdatei startet das Unattended Setup von Visual Studio Net und springt gleich zum unzip von MSDN weiter obwohl ich eigentlich zuerst das Setup fertig ausführen will und dann erst mit dem dekomprimieren anfangen will.

Die Schalter Start /wait oder CALL funktionieren zwar jedoch läuft die Batch weiter obwohl sie ja warten sollte bis Setup fertig ist...

Weiß echt nimma weiter wie ich das anstellen soll...

tia
haemma


othan schrieb am 26.05.2004 um 09:49

mit dem befehl "pause" wartets bis du ne taste gedrückt hast

das wär die holzhammer methode wie du die batch zum halten bringst


grisu666 schrieb am 26.05.2004 um 09:56

hm, wenn ich das richtig seh, dann willst warten bis die setup.exe fertig ist und dann willst powerarc starten oder?
wenn ja, dann solltest das setup mittels start /w starten und nicht das powerarc.
Greetz


haemma schrieb am 26.05.2004 um 10:03

@cows othan: thx aber ich will das komplett automatisch ablaufen lassen, pause erfordert ja wieder eine benutzereingabe.

@grisu: thx, gleich mal ausprobieren


haemma schrieb am 26.05.2004 um 10:07

habs ausprobiert, das geht nicht, er fängt trotzdem zum dekomprimieren an..

Befehl sieht jetzt so aus:

M_VB_NET2003
REM ------------------------------------------
ECHO Starting VS_.NET 2003 Install Please be patient...
START /w C:\Temp\setup\setup.exe /unattendfile \\server\share\Allgemein\MSDN\TEST\Unattend_USER.ini
ECHO DONE!
REM ------------------------------------------
:END

:UNZIP_MSDN
REM ------------------------------------------
ECHO Unzipping MSDN Setup Files for USER, please wait...
Start C:\Progra~1\Powerarchiver\Powerarc.exe -e C:\net\net.zip C:\Temp\test
IF ERRORLEVEL 0 goto MSDN
REM ------------------------------------------


EDIT: Auch ohne dem START Befehl funktioniert es nicht.


grisu666 schrieb am 26.05.2004 um 10:18

Zitat von haemma
START /w C:\Temp\setup\setup.exe /unattendfile \\server\share\Allgemein\MSDN\TEST\Unattend_USER.ini

probiers mit start /w /b C:\Temp\setup\setup.exe /unattendfile \\server\share\Allgemein\MSDN\TEST\Unattend_USER.ini

vielleicht klappts ja so.
LG


haemma schrieb am 26.05.2004 um 10:29

hm, hab das jetzt eingebaut nur macht er mir das setup auf und dann aber die batchdatei zu. also ich seh nicht was er weitermacht...


Triple-X schrieb am 26.05.2004 um 10:29

genügt es wenn man nur /w schreibt, laut windows hilfe müsste es /wait heißen. Vielleicht liegts daran


haemma schrieb am 26.05.2004 um 10:34

ja, /w bedeutet das es in einem neuen Window gestartet wird
/wait bedeutet dass die batch warten soll bis die (in meinem fall) setup datei fertig ist.


grisu666 schrieb am 26.05.2004 um 10:48

hm, schwer zu sagen, woran das Problem jetzt liegen könnte. ist recht kompliziert mit dem Start befehl.

edit:/ dann solltest das w villeicht doch mal durch ein wait ersetzen, oder?


haemma schrieb am 26.05.2004 um 10:50

ja, ich arbeit schon den 3ten tag dran und des will einfach nicht so funktionieren wie ich das will....


haemma schrieb am 26.05.2004 um 10:52

alles schon probiert, auch mit wait tut es einfach weiter..


grisu666 schrieb am 26.05.2004 um 11:11

hast eigentlich ein klass. .bat-file geschreiben oder ein cmd-file?
ausserdem, für was sind die ganzen sprungmarken, es kommt ja nur ein goto Befehl vor, mit dem dann tatsächlich gesprungen wird.


haemma schrieb am 26.05.2004 um 11:15

.bat file

ja, die sollt ich noch rausnehmen.... war nur der erstentwurf... und ich wollt mich erstmal drauf konzentrieren dass das alles läuft und dann no die schönheitsfehler korrigieren...


grisu666 schrieb am 26.05.2004 um 11:25

Habe diese Vorgangsweise mit call gerade getestet und scheint zu funktionieren.
Habe es getestet indem ich der 1. batch ein simples echo rausgegeben hab, danach ein call calc und danach wiederum eine Ausgabe mit echo. die 2. Ausgabe erscheint erst wenn calc beendet wurde.

/edit: musste gerade feststellen, dass er nur wartet, wenn man eine 16 bit Appl. aufruft, bei einer 32 bit Appl. wird die bat bzw cmd sofort weiterverarbeitet.

da müsstest schon den scripting host verwenden, damit sollte es dann aber klappen

LG




overclockers.at v4.thecommunity
© all rights reserved by overclockers.at 2000-2026