wix開機啓動

前言:之前兩個版本都是使用的WixUI_InstallDir前言後來考慮到用戶經常安裝在系統目錄或是根目錄,所以第一個變更是取消目錄選擇,使用默認目錄;最近360的認證規則刷新了一次,開機啓動(非用戶選擇)變成了病毒,所以第二個變更便是加入複選框,讓用戶知曉並有選擇的權利。下面就是解決這兩個問題的經歷:

變更一:取消目錄選擇

啥都沒變直接改爲WixUI_Minimal,最後效果不甚理想:


授權說明並未顯示出來,非得鼠標滑過或是拖動滾動條才能顯示出來。沒太多時間研究原因,直接在WixUI_InstallDir的基礎上修改,具體可查看

 

具體修改如下:


複製一份WixUI_InstallDir.wxs,改個名字,去掉目錄選擇對話框,修改一下”上一步下一步”的關聯,就可以達到效果

變更二:開機啓動

官網有個例子是安裝完之後啓動程序,HowTo: Run the Installed Application After Setup

我稍微做了寫調整以適應之前的工程:

<UI>

   <UIRef Id="WixUI_brd" />

   <UIRef Id="WixUI_ErrorProgressText" />

   

   <Publish Dialog="ExitDialog"

       Control="Finish"

       Event="DoAction"

       Value="startup">WIXUI_EXITDIALOGOPTIONALCHECKBOX = 1 andNOT Installed</Publish>

</UI>

<PropertyId="WIXUI_EXITDIALOGOPTIONALCHECKBOXTEXT" Value="允許開機啓動,以便網頁可以任性拉起助手。" />

<Property Id ="WIXUI_EXITDIALOGOPTIONALCHECKBOX" Value = "1" />

 

<CustomAction Id="startup"FileKey='startupEXE' ExeCommand='' Return='asyncNoWait'  Impersonate="yes" />

說明:<UIRef Id="WixUI_brd" />是解決第一個變更的;<Publish >是點完成之後寫註冊表(開機啓動);指定WIXUI_EXITDIALOGOPTIONALCHECKBOXTEXT是用於在完成界面顯示一個CheckBox;指定WIXUI_EXITDIALOGOPTIONALCHECKBOX的值爲1表示CheckBox默認是選中狀態。

看下圖就知道怎麼顯示出CheckBox:

只有定義了WIXUI_EXITDIALOGOPTIONALCHECKBOXTEXT,在完成界面上才顯示CheckBox。

具體寫註冊表的動作就放在exe 或是dll裏面

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章