2012-07-05 274 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