Mic*_*ker 10 installer wix bootstrapper burn 32bit-64bit
我有我的安装程序.msi的x64和x86版本,并希望发送一个只检查机器架构并运行x86/x64 MSI的可执行文件.MSI基本相同,它们安装相同的AnyCPU文件,我将其捆绑在一个共享的.cab文件中,以免使安装程序的大小加倍.
到目前为止,我已经尝试过WiX Burn,它会弹出一个我不想要的GUI(我只想使用MSI GUI),我尝试通过/ silent标志禁用刻录GUI - 这会将此标志传播到MSI所以它禁用了MSI的所有GUI(不是我想要的).
当我说没有默认的No-GUI版本的Burn bootstrapper时,我认为我是正确的,要创建一个你必须自己编辑源代码?这听起来像一个巨大的缺失功能?
我也试过DotNetInstaller,它有一套令人困惑的用户界面问题.我也尝试过setupbld,它不支持带有外部驾驶室的MSI.
对于体系结构检测,您可以使用MsiPackage元素中的InstallCondition属性.
简单地试试吧:
<MsiPackage SourceFile="..\Example\bin\Release\x86\example.msi" Compressed="no" InstallCondition="NOT VersionNT64" />
<MsiPackage SourceFile="..\Example\bin\Release\x64\example.msi" Compressed="no" InstallCondition="VersionNT64" />
Run Code Online (Sandbox Code Playgroud)
资料来源:http: //wix.sourceforge.net/manual-wix3/wix_xsd_msipackage.htm
jac*_*ous -4
您可以使用自定义操作和刻录内置变量来检查您是在 X86 还是 x64 上运行。在此基础上,您可以执行/安排操作列表。
<InstallExecuteSequence>
<Custom Action="Windows32bitInstall" After="InstallFiles">NOT VersionNT64</Custom>
<Custom Action ="Windows64bitInstall" After="InstallFiles" >VersionNT64</Custom>
<Custom Action="InstallHelp" After="Windows64bitInstall">NOT Installed</Custom>
</InstallExecuteSequence>
Run Code Online (Sandbox Code Playgroud)
这将以相同的高度执行。
<CustomAction Id="InstallHelp" Directory="ProgramFilesFolder"
Execute="deferred" Impersonate="no" Return="ignore"
ExeCommand="[HELPDIR]\help.exe /log" />
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
5602 次 |
最近记录: |