如何访问 .exe 运行 Wix 引导程序的文件夹?

dow*_*ome 2 directory variables installation wix bootstrapper

我有一个引导程序,我想将其内容安装到正在运行引导程序 .exe 的同一目录中。然后当用户按下“LAUNCH”按钮时,将运行该可执行文件。我如何引用这个目录?

我试图通过 MsiProperty 将 $(sys.CURRENTDIR) 传递给 MSI,但查看日志文件,CURRENTDIRECTORY 和 INSTALLFOLDER 不匹配。

CURRENTDIRECTORY=C:\Users\nickd\Desktop\WixTestingInstall\CW6 INSTALLFOLDER=C:\VB6\CW6\CW6.root\CW6\PreReqsInstaller\

我将不胜感激任何帮助。

Isa*_*110 5

您可以尝试使用burn内置变量:

WixBundleOriginalSource - 获取包最初运行的源路径。WixBundleOriginalSourceFolder - 从最初运行包的位置获取文件夹。

WIX 内置变量

正如@SeanHall 在下面评论的那样,这些变量仅适用于 WiX 3.9.526.0 版本

做这样的事情:

    <Variable Name="InstallFolder" Type="string" Value="[WixBundleOriginalSourceFolder]" />

<MsiPackage 
        Id="msiforinstall" 
        Compressed="yes" 
        SourceFile="sourcepath" 
        Vital="yes"> 
        <MsiProperty Name="INSTALLLOCATION" Value="[InstallFolder]" /> 
  </MsiPackage> 
Run Code Online (Sandbox Code Playgroud)