无效开关,除非行分别为 运行
Invalid switch unless line is run separately
我的 .BAT 有一个 Install Shield 行因无效开关 /s 而出错,除非它是 运行 在单独的命令提示符中。我对这一切都很陌生,我能想到的是,这是因为它是一种不同的语法。有没有办法在安装其余部分的同一批次中将其安装到 运行?
这是问题中的行:
START /wait %desktop%\Serverx64\CDImage_1100_1003a\setup.exe /s /a /s /sms /f1c:\Temp\setup.iss
这是我的.BAT:
@echo off
@echo Installing SQL
MD C:\tempdasql
COPY ConfigurationFile.ini C:\tempdasql > nul
SQLEXPRWT_x64_ENU /ConfigurationFile="C:\tempdasql\ConfigurationFile.ini"
@echo SQL Installed
@echo:
@echo Installing 2005 BC
MSIEXEC /i SQLServer2005_BC_x64.msi /qb
@echo Installed 2005 BC
@echo:
DEL C:\tempdasql\ConfigurationFile.ini
RD C:\tempdasql
TIMEOUT /T 3
@echo:
@echo Installing WinRAR
SET desktop="%userprofile%\Desktop"
START "WinRAR" /wait %desktop%\Serverx64\winrar\wrar393.exe /s
SET winrar="C:\program Files\WinRAR\WinRAR.exe"
MD %userprofile%\Desktop\Serverx64\CDImage_1100_1003a\
@echo Extracting Foo
@echo:
%winrar% x %desktop%\Serverx64\CDImage_1100_1003a.iso %desktop%\Serverx64\CDImage_1100_1003a\
TIMEOUT /T 3
@echo:
@echo Installing Foo
MD C:\Temp
COPY %desktop%\Serverx64\Setup.iss C:\Temp\ >nul
START /wait %desktop%\Serverx64\CDImage_1100_1003a\setup.exe /s /a /s /sms /f1c:\Temp\setup.iss
DEL C:\Temp\setup.iss
RD C:\Temp
Copy C:\Foo\msvcr71.dll C:\Foo\Support\ >nul
START C:\Foo\Support\Pmtools.exe
修复由 Aschipfl 提供。
在 START 之后放置一个“”以创建一个空字符串解决了这个问题。 START 命令后没有字符串,批处理错误地处理了我的文件路径和开关。
我的 .BAT 有一个 Install Shield 行因无效开关 /s 而出错,除非它是 运行 在单独的命令提示符中。我对这一切都很陌生,我能想到的是,这是因为它是一种不同的语法。有没有办法在安装其余部分的同一批次中将其安装到 运行?
这是问题中的行:
START /wait %desktop%\Serverx64\CDImage_1100_1003a\setup.exe /s /a /s /sms /f1c:\Temp\setup.iss
这是我的.BAT:
@echo off
@echo Installing SQL
MD C:\tempdasql
COPY ConfigurationFile.ini C:\tempdasql > nul
SQLEXPRWT_x64_ENU /ConfigurationFile="C:\tempdasql\ConfigurationFile.ini"
@echo SQL Installed
@echo:
@echo Installing 2005 BC
MSIEXEC /i SQLServer2005_BC_x64.msi /qb
@echo Installed 2005 BC
@echo:
DEL C:\tempdasql\ConfigurationFile.ini
RD C:\tempdasql
TIMEOUT /T 3
@echo:
@echo Installing WinRAR
SET desktop="%userprofile%\Desktop"
START "WinRAR" /wait %desktop%\Serverx64\winrar\wrar393.exe /s
SET winrar="C:\program Files\WinRAR\WinRAR.exe"
MD %userprofile%\Desktop\Serverx64\CDImage_1100_1003a\
@echo Extracting Foo
@echo:
%winrar% x %desktop%\Serverx64\CDImage_1100_1003a.iso %desktop%\Serverx64\CDImage_1100_1003a\
TIMEOUT /T 3
@echo:
@echo Installing Foo
MD C:\Temp
COPY %desktop%\Serverx64\Setup.iss C:\Temp\ >nul
START /wait %desktop%\Serverx64\CDImage_1100_1003a\setup.exe /s /a /s /sms /f1c:\Temp\setup.iss
DEL C:\Temp\setup.iss
RD C:\Temp
Copy C:\Foo\msvcr71.dll C:\Foo\Support\ >nul
START C:\Foo\Support\Pmtools.exe
修复由 Aschipfl 提供。 在 START 之后放置一个“”以创建一个空字符串解决了这个问题。 START 命令后没有字符串,批处理错误地处理了我的文件路径和开关。