Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/api/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Installation 在基于WiX的安装过程中提取SFX时出现问题_Installation_Wix_7zip_Self Extracting_Sfx - Fatal编程技术网

Installation 在基于WiX的安装过程中提取SFX时出现问题

Installation 在基于WiX的安装过程中提取SFX时出现问题,installation,wix,7zip,self-extracting,sfx,Installation,Wix,7zip,Self Extracting,Sfx,我的WiX项目中有以下代码 <CustomAction Id="ExtractHelp" Directory="DocFolder" Execute="commit" Impersonate="no" ExeCommand="[MYAPPINSTALLFOLDER]Doc\help_zip.exe" /> <InstallExecuteSequence> <Custom Action="ExtractHelp" Before="N

我的WiX项目中有以下代码

<CustomAction Id="ExtractHelp" Directory="DocFolder" Execute="commit" Impersonate="no" ExeCommand="[MYAPPINSTALLFOLDER]Doc\help_zip.exe"  />
      <InstallExecuteSequence>
           <Custom Action="ExtractHelp" Before="NativeCompilation">NOT REMOVE</custom>
      </InstallExecuteSequence>

不删除
其中help_zip是我创建的一个7z SFX归档文件,用于打包帮助文件,并在安装期间将其解压缩到DocFolder中。唯一的问题是,文件一直解压缩到C:\Windows\SysWow64,而不是DocFolder指定的文件夹。有什么想法吗

此外,help_zip.exe驻留在DocFolder中,因此它甚至不需要参数来输出到它所在的目录,至少据我所知=\


编辑我已经编辑了上面的代码以显示我的解决方案。请注意,NativeCompilation是我们创建的另一个操作(不是WiX的一部分),而not REMOVE是指在我们不卸载时执行该操作。

尝试设置该属性,以便您可以使用(带工作目录的EXE)。通过这种方式,您可以确定SFX存档的工作目录。

尝试设置该属性,以便使用(带工作目录的EXE)。通过这种方式,您可以确定SFX存档的工作目录。

它似乎将文件提取到当前目录,该目录恰好是C:\Windows\SysWow64。如果在命令提示符下运行相同的命令,当前目录就是您希望提取的文件所在的目录,那么该命令是否正常工作?您可以通过日志(
/l*v MSI.log
)运行MSI以查看它启动的确切命令。它似乎将文件提取到当前目录,该目录恰好是C:\Windows\SysWow64。如果在命令提示符下运行相同的命令,当前目录就是您希望提取的文件所在的目录,那么该命令是否正常工作?您可以通过日志(
/l*v MSI.log
)运行您的MSI,以查看它启动的确切命令。这就是我最后所做的,以及上面代码的几个其他MOD。我将在几分钟后发布我的更改。这就是我最后所做的,以及上面代码的几个其他mod。我将在几分钟后发布我的更改。