我正在尝试使用iexpress来运行我的批处理文件,它将为我执行2个exe和1个msi文件。当我尝试手动完成时,它起作用了。
以下是我的批处理文件中的代码。
Start /wait %CD%\1.exe /q
Start /wait %CD%\2.exe /q
msiexec.exe /i "%CD%\3.msi" 但是当我从iexpress创建一个exe文件时,这似乎不起作用。

Reference
上面提到的文章有一些代码(将文件复制到临时文件夹)&但是我不能理解其中的语法。
MKDIR %Tmp%\<UNIQUE PRODUCT NAME>
XCOPY . %Tmp%\<UNIQUE PRODUCT NAME> /S /E /Y
%Tmp%\<UNIQUE PRODUCT NAME>\setup.exe发布于 2012-12-05 05:48:31
问题是,正如您从屏幕截图中看到的,批处理文件是由command.com而不是cmd.exe执行的。(如果不指定解释器,IExpress将使用command.com。哦。)所以没有像%cd%或%~dp0这样的变量。
你可能无论如何都不需要它们了。但您确实需要在IExpress中显式地执行批处理文件,如下所示:
cmd.exe /c file.bat所以它使用了一个现代的命令解释程序。
问题中的第二小段代码通过xcopy将文件保存到不同的目录,从而使文件持久化(即在IExpress归档终止后不会删除它们)。
发布于 2012-05-04 20:42:48
这是它的意思:
1)在%TMP%环境变量中存储的路径中创建一个名为“唯一产品名”的目录(MKDIR),该目录通常指向:C:\DOCUME~1\您的用户名\LOCALS~1\Temp
MKDIR %Tmp%\<UNIQUE PRODUCT NAME>2)然后递归地将当前文件夹中的所有安装文件复制到之前创建的新文件夹中。XCOPY参数:
/S会复制目录和子目录,但不包括空目录。
/E复制目录和子目录,包括空目录。与/S /E相同。可用于修改/T。
/Y不会提示您确认是否要覆盖现有目标文件。
XCOPY . %Tmp%\<UNIQUE PRODUCT NAME> /S /E /Y3)最终从新位置%Tmp%\setup.exe执行应用程序
希望这能有所帮助
发布于 2012-05-04 20:40:53
尝试用%~dp0替换%CD%
假设1.exe与批处理脚本位于同一文件夹中。
https://stackoverflow.com/questions/10448897
复制相似问题