2012-07-05 234 views
0

我最近开始在wix中创建安装程序,所以我非常新。有问题,当用户点击一个按钮,我想第二个安装程序开始使用.exe文件。不过,我不能让我的代码来做到这一点,我是一个有点困惑,其中的码位去的地方,但我有这三个部分:启动第二个安装程序WIX

<Binary Id="HaspInstaller" SourceFile="visual studio 2010\Projects/ExampleInstaller/ExampleInstaller/bin/Debug/HASPUserSetup.exe" /> 

<CustomAction Id="HaspSetup" BinaryKey="HaspInstaller" ExeCommand="-switch" 
Execute="deferred" Return="check" HideTarget="no" Impersonate="no" /> 

<Control Id="Hasp" Type="PushButton" X="40" Y="60" Width="56" Height="34" Bitmap="yes" Text="HaspImage" > 
     <Publish Event="DoAction" Value="HaspSetup" /> 
    </Control> 

任何帮助将大大理解.. :)

N

回答

3

由于Execute属性设置为延迟,单击按钮时不会运行。将其标记为立即生效,只要您点击按钮,它就会立即运行。

延期是在需要提升并需要安排到InstallExecute序列中时使用的。

看看http://wix.sourceforge.net/manual-wix3/qtexec.htm这是安静的执行自定义操作,该页面很好地解释了如何为延迟和立即执行进行设置。

此外,如果该exe文件是另一个msi的引导程序,您将无法运行它,因为您已经在一个MSI事务中。在这种情况下,使用刻录将不同的安装程序捆绑到单一安装程序的用户体验中。

+0

嗨,谢谢你知道,如果有任何创建一个exe文件包的好例子,因为我看了,并没有喜悦.. :( – 2012-07-06 14:41:07

+2

看看http://wix.sourceforge.net/ manual-wix3/authoring_bundle_intro.htm或真正深入的示例下载wix源代码并查看“安装”项目。 – 2012-07-06 15:43:05