2017-03-23 3 views
0

Fehler: Installation zu diesem Zeitpunkt unerwartet.Batch-Datei: Die Installation war zu dieser Zeit unerwartet

Der Fehler tritt in der hervorgehobenen (fett) echo-Anweisung auf, nachdem die Anwendung installiert wurde, wenn ich dieses Skript auf CMD ausführe. Ich habe versucht mit @ECHO OFF zu entfernen, aber schien nicht zu funktionieren. Bitte schlagen Sie vor.

Unten finden Sie den Code ein:

@ECHO OFF 
REM Setting the Package Name 
SET PACKAGENAME=OracleCorporation-CrystalBall-11.1.4100.0-EN 
SET LOGDIR=%Systemdrive%\Logs\CrystalBall 
SET BATCHLOG=%LOGDIR%\%PACKAGENAME%_BatchInstall.log 
IF NOT EXIST "%Systemdrive%\Logs\CrystalBall" MD "%Systemdrive%\Logs\CrystalBall" 
ECHO %DATE% %TIME% >> %BATCHLOG% 
rem Setting the LOGDIR path 
SET LOG1=%LOGDIR%\OrcaleCorporation-OracleCrystalBall-EN_Install.log 
REM Setting the current directory path 
cd /d %~dp0 
:Crystal 
ECHO Starting installation of Oracle Crystal Ball (32-bit) >> %BATCHLOG% 
REG QUERY HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\{878FE383-4153-4C76-9F17-F1277FBBD670} /v DisplayName /REG:32 
IF %ERRORLEVEL% EQU 0 GOTO :End 
start /wait "inst" "%CD%\Setup\Inst\setup.msi" /qn /L*V %LOG1% 
**ECHO completed installing Oracle Crystal Ball (32-bit) with %Errorlevel% >> %BATCHLOG%** 
If %Errorlevel% NEQ 0 (
    If %Errorlevel% NEQ 3010 (
     If %Errorlevel% NEQ 1641 (
      ECHO Error occured Ending Oracle Crystal Ball (32-bit) Installation >> %BATCHLOG% 
      goto :End 
     ) 
    ) 
) 
:End 
ECHO Completed Installation of Oracle Crystal Ball (32-Bit) at %DATE% %TIME% >> %BATCHLOG% 
+0

Der Fehler wird durch diese Zeile verursacht, oder es kommt nie zu dieser Zeile? Ich würde versuchen, '/ qn' zu'/qf' in der vorherigen Zeile zu ändern und zu sehen, ob Sie eine nützliche Ausgabe erhalten, oder einfach den Inhalt der '% LOG1%' Datei untersuchen. – BACON

+0

Kristallkugel ist installiert. Wenn ich mit ** ECHO ON ** müde bin, trat der obige Fehler durch die Echozeile auf. Allerdings ist/qn für die unbeaufsichtigte Installation gedacht, da ich die Anwendung still installieren muss, während/qf mir eine Eingabeaufforderung gibt. Ich überprüfte den Status der Protokolldatei: ** Oracle Crystal Ball (32-Bit) - Der Installationsvorgang wurde erfolgreich abgeschlossen. ** – Lesvita

Antwort

1

der Fehler nicht in der Zeile, Sie markiert, aber einige Zeilen später:

ECHO Error occured Ending Oracle Crystal Ball (32-bit) Installation >> %BATCHLOG% 

Das Schließen Paranthèse ) Block Ihre IF Code schließt (zu früh) statt nur zu wiederholen. Also das Wort hinter (Installation) wird als ein Befehl geparst, der Ihnen die Fehlermeldung gibt.

Sie müssen „Flucht“ diese ) mit einem Caret:

ECHO Error occured Ending Oracle Crystal Ball (32-bit^) Installation >> %BATCHLOG% 

(Hinweis: Einige Leute mögen, mögen auch ^) entkommen, die technisch nicht erforderlich ist, sondern für die Symmetrie/Lesbarkeit ...)

+0

Ich dachte, es könnten die Klammern sein, weil ich ihnen auch entkommen musste, genau wie du sagst , aber da die vorhergehende "ECHO" -Zeile mit Klammern nicht fehlging, dachte ich, dass das nicht das Problem sein muss. Das macht Sinn. +1. – BACON

+0

Ihr erstes 'echo' ist nicht in einem Codeblock, also ist das') '" schon speichern ". – Stephan

+0

Ja, das hat ziemlich gut funktioniert. Ich danke dir sehr. – Lesvita

Verwandte Themen