IExpress 2 和 bat 文件路径

Posted

技术标签:

【中文标题】IExpress 2 和 bat 文件路径【英文标题】:IExpress 2 and bat file path 【发布时间】:2012-02-02 14:56:06 【问题描述】:

我必须在几台机器上安装 3 .exe 需要以正确的顺序安装。为此,我创建了一个 .bat 文件进行安装。

Start /wait %CD%\x.exe /q
Start /wait %CD%\y.exe /q
Start /wait %CD%\z.exe /q

如果我复制文件夹并安装在目标机器上,它就可以工作。 但我想创建一个具有 .bat 和 3 个 .exe 的自解压 exe。

我正在尝试使用 IExpress 2,但是当我运行由 IExpress 创建的 .exe 时,我总是遇到错误“windows 找不到 ...文件路径”。 为什么 %CD% 不起作用? 3.exe需要改路径吗?

【问题讨论】:

你的意思是你想要一个安装程序或一个自解压的 exe?尝试删除%CD%,无论如何它应该默认为当前目录。 自解压 exe。我尝试不使用 %CD%,但没有成功。 尝试使用7-Zip或WinZip自解压exe功能,应该可以。 为了实现这一点,我过去使用 7zip 完成所有繁重的工作(压缩实际内容 AKA 大 ZIP),然后我使用 Iexpress 打包 7z.exe redist 和 zip 文件。然后橱柜制造商脚本只需调用 7zip 来提取大文件,并启动自定义安装程序。这是因为 iexpress.exe 在自定义配置方面很糟糕。所以我只是将它用于简单的清单和提升内容,并让真正的 zip 工具完成真正的工作 【参考方案1】:

这两个问题都可以解决:

检查“使用长文件名” 使用 .cmd 扩展名而不是 .bat 保存您的批处理文件(IExpress 有一个使用长文件名的选项,但如果您有一个 .bat 文件,它将被忽略)

来源:http://knowciscostuff.wordpress.com/2012/06/15/iexpress-tool-on-windows-to-create-self-extracting-exe/

【讨论】:

欢迎提供相关代码,但只提供链接。 答案的基本部分是“使用 .cmd 扩展名而不是 .bat 保存批处理文件”和“IExpress 有一个使用长文件名的选项”该选项是向导。【参考方案2】:

在选项中,选择“使用包内的长文件名存储文件”以全名存储文件。

【讨论】:

【参考方案3】:

问题在于文件的长名称。 文件名不能超过 8 个字符。

我只是更改了文件名并且它起作用了。

【讨论】:

【参考方案4】:

这个特定问题的真正解决方案是在“包名称和选项”窗口中选中“使用包中的长文件名存储文件”选项。

【讨论】:

以上是关于IExpress 2 和 bat 文件路径的主要内容,如果未能解决你的问题,请参考以下文章

安装所有文件后如何运行批处理文件(IExpress)

打包为 IExpress 可执行文件的批处理文件无法正常运行

在通过 Iexpress 创建的 exe 文件中使用命令行参数

将 ZIP 文件提取到绝对路径

无法将参数发送到通过 IExpress 转换为应用程序的批处理文件

如何在bat中获取特定路径下的lib文件列表?