msi文件名在Windows批处理文件中有空格

时间:2013-12-01 14:28:40

标签: windows batch-file windows-installer filenames spaces

我正在尝试使用msiexec来安装软件包。我从Windows Vista中的批处理文件中提供命令。给定的MSI文件名有很多空格。 网上的一些帖子说msi文件名不应该有空格。但是这个包及其相关的附加组件都有其空格的MSI文件名。我该怎么办? 我试过这个引号的多种变体,但都没有奏效。 :(

msiexec / i“%~dp0 \ PackageDirectory \”包文件名.msi“”

PackageDirectory位于运行批处理脚本的目录中。

1 个答案:

答案 0 :(得分:0)

如评论中所建议,您只需将完整路径用双引号引起来,如下所示:

msiexec /i "%~dp0\PackageDirectory\Package File Name.msi"

对于属性来说,这可能会变得更加复杂,因为可能需要附加反引号来使每个双引号转义,例如:

msiexec /i "%~dp0\PackageDirectory\Package File Name.msi" INSTALLDIR=`"[Destination Path With Spaces]`"

有关第二期的更多信息: Command line arguments for msiexec break on powershell if they contain space