"We are back" « oc.at

Frage zu einer Batchdatei

haemma 26.05.2004 - 09:19 1801 40
Posts

haemma

SSD FTW!
Registered: Feb 2003
Location: wean
Posts: 1813
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

Layer 8 Problem
Avatar
Registered: Nov 2001
Location: Switzerland
Posts: 4236
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

workz2much
Avatar
Registered: Jun 2002
Location: Graz
Posts: 709
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
Bearbeitet von grisu666 am 26.05.2004, 09:59

haemma

SSD FTW!
Registered: Feb 2003
Location: wean
Posts: 1813
@cows othan: thx aber ich will das komplett automatisch ablaufen lassen, pause erfordert ja wieder eine benutzereingabe.

@grisu: thx, gleich mal ausprobieren

haemma

SSD FTW!
Registered: Feb 2003
Location: wean
Posts: 1813
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.
Bearbeitet von haemma am 26.05.2004, 10:17

grisu666

workz2much
Avatar
Registered: Jun 2002
Location: Graz
Posts: 709
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

SSD FTW!
Registered: Feb 2003
Location: wean
Posts: 1813
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

Addicted
Avatar
Registered: Feb 2001
Location: Pregarten (OÖ)
Posts: 485
genügt es wenn man nur /w schreibt, laut windows hilfe müsste es /wait heißen. Vielleicht liegts daran

haemma

SSD FTW!
Registered: Feb 2003
Location: wean
Posts: 1813
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

workz2much
Avatar
Registered: Jun 2002
Location: Graz
Posts: 709
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

SSD FTW!
Registered: Feb 2003
Location: wean
Posts: 1813
ja, ich arbeit schon den 3ten tag dran und des will einfach nicht so funktionieren wie ich das will....

haemma

SSD FTW!
Registered: Feb 2003
Location: wean
Posts: 1813
alles schon probiert, auch mit wait tut es einfach weiter..

grisu666

workz2much
Avatar
Registered: Jun 2002
Location: Graz
Posts: 709
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

SSD FTW!
Registered: Feb 2003
Location: wean
Posts: 1813
.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

workz2much
Avatar
Registered: Jun 2002
Location: Graz
Posts: 709
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
Bearbeitet von grisu666 am 26.05.2004, 11:50
Kontakt | Unser Forum | Über overclockers.at | Impressum | Datenschutz