rem +++ OPERA FROM USB-STICK - SCRIPT VERSION 1.2 +++
@echo off rem Defaultwerte setzen SET OperaStartDir="%~dp0" SET OperaTempDir= SET JUMP_BACK_TO=
rem Parameter auswerten IF /i "%~1"=="/?" goto HOW_TO_USE IF /i "%~1"=="-?" goto HOW_TO_USE IF /i "%~1"=="/h" goto HOW_TO_USE IF /i "%~1"=="-h" goto HOW_TO_USE IF /i "%~1"=="--h" goto HOW_TO_USE IF /i "%~1"=="--help" goto HOW_TO_USE IF NOT "%~1"=="" goto WITH_PARAM IF "%~1"=="" goto TEMP
rem Mit übergebenem Parameter testen :WITH_PARAM SET OperaTempDir=%~1 SET JUMP_BACK_TO=TEMP goto PREPARE_PATH
rem Zuerst im System-TEMP versuchen :TEMP IF "%TEMP%"=="" ( goto TMP ) SET OperaTempDir=%TEMP% SET JUMP_BACK_TO=TMP goto PREPARE_PATH
rem Zuerst im System-TMP versuchen :TMP IF "%TMP%"=="" ( goto LW_D ) SET OperaTempDir=%TMP% SET JUMP_BACK_TO=LW_D goto PREPARE_PATH
rem Laufwerk D: vorhanden? :LW_D SET OperaTempDir=D:\ SET JUMP_BACK_TO=LW_C goto PREPARE_PATH
rem Laufwerk C:\ vorhanden? :LW_C SET OperaTempDir=C:\ SET JUMP_BACK_TO=NO_VALID_PATH_FOUND goto PREPARE_PATH
:NO_VALID_PATH_FOUND echo ERROR: Es konnte kein passendes Ziel-Verzeichnis gefunden werden exit /b
:COPY_NOW rem create batchfile "errlvl0.cmd" echo rem *** created by startOpera.cmd *** >%OperaTempDir%errlvl0.cmd echo exit /b 0 >>%OperaTempDir%errlvl0.cmd rem Copy now echo Copy OPERA from %OperaStartDir% to %OperaTempDir% xcopy %OperaStartDir%* %OperaTempDir% /E /Q >nul 2>nul
if errorlevel 1 ( rem reset errorlevel and pause CALL %OperaTempDir%errlvl0.cmd echo ERROR: Fehler beim kopieren - Abbruch pause goto CLEANUP )
ren %OperaTempDir%opera.ex_ opera.exe pushd %OperaTempDir% rem Pfade anpassen ... für Variante 3 die folgende Zeile einkommentieren rem adjpath.exe echo Start OPERA ... opera.exe popd
if errorlevel 1 ( rem reset errorlevel and pause CALL %OperaTempDir%errlvl0.cmd pause ) echo OPERA beendet
:CLEANUP echo Clean up ... rmdir /S /Q %OperaTempDir%
if exist %OperaTempDir% ( echo Clean up schlug fehl - Verzeichnis %OperaTempDir% per Hand löschen! pause ) exit /b
:HOW_TO_USE
echo "startOpera /?" echo zeigt diese Hilfe an echo "startOpera" echo versucht eine der folgenden Standard-Zielangaben: echo TEMP, TMP, D:\ und C:\ echo "startOpera <Laufwerk und Pfadangabe>" echo versucht zuerst in das angegebene Verzeichnis zu kopieren. echo Schlägt das fehl, werden die Standard-Zielangaben verwendet. pause exit /b
:PREPARE_PATH IF NOT EXIST %OperaTempDir% ( echo %OperaTempDir% nicht gefunden SET OperaTempDir= goto %JUMP_BACK_TO% ) echo %OperaTempDir% gefunden
:AGAIN IF "%OperaTempDir:~-1%"=="\" SET OperaTempDir=%OperaTempDir:~0,-1% IF "%OperaTempDir:~-1%"=="\" goto AGAIN SET OperaTempDir=%OperaTempDir%\OperaTempDir\
md %OperaTempDir% 2>nul if errorlevel 1 ( echo ERROR: kein Schreibzugriff auf %OperaTempDir% - Abbruch SET OperaTempDir= goto %JUMP_BACK_TO% ) goto COPY_NOW
rem +++ OPERA FROM USB-STICK - WWW.TORSTEN-KEIL.NET +++
rem +++ LAST LINE OF SCRIPT +++
|