feat(installer): add finish screen with launch-app checkbox to Windows MSI
Adds WixUI_Minimal UI to the WiX installer so users see a proper Welcome → Progress → Finish wizard. The finish screen includes a pre-ticked "Launch Open CAD Studio" checkbox; clicking Finish with it checked starts the application immediately after the installer closes. Also updates the light.exe invocation in release.yml to include -ext WixUIExtension, which is required to link the WixUI dialogs. https://claude.ai/code/session_01DFVSKgViFaxEjZD2KsTdtt
This commit is contained in:
parent
99f1a2679e
commit
556989dbdb
2 changed files with 32 additions and 2 deletions
2
.github/workflows/release.yml
vendored
2
.github/workflows/release.yml
vendored
|
|
@ -138,7 +138,7 @@ jobs:
|
|||
$wxsPath `
|
||||
-out $wixObj
|
||||
if ($LASTEXITCODE -ne 0) { throw "candle failed" }
|
||||
& $light $wixObj -out $msiPath
|
||||
& $light $wixObj -ext WixUIExtension -out $msiPath
|
||||
if ($LASTEXITCODE -ne 0) { throw "light failed" }
|
||||
|
||||
- name: Sign MSI installer (Azure Trusted Signing)
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@
|
|||
candle.exe -arch x64 -dVersion=<x.y.z> -dSource=target\release\OpenCADStudio.exe \
|
||||
-dIcon=packaging\windows\AppIcon.ico packaging\windows\main.wxs \
|
||||
-out packaging\windows\main.wixobj
|
||||
light.exe packaging\windows\main.wixobj -out OpenCADStudio.msi
|
||||
light.exe packaging\windows\main.wixobj -ext WixUIExtension -out OpenCADStudio.msi
|
||||
|
||||
Provides:
|
||||
* Per-machine install under Program Files\Open CAD Studio.
|
||||
|
|
@ -122,5 +122,35 @@
|
|||
<ComponentRef Id='ProgramMenuDirComp' />
|
||||
</Feature>
|
||||
|
||||
<!--
|
||||
Finish-screen "Launch Open CAD Studio" checkbox.
|
||||
WIXUI_EXITDIALOGOPTIONALCHECKBOX=1 pre-ticks the checkbox; the Publish
|
||||
below fires the launch action when the user clicks Finish with it checked.
|
||||
WixUI_Minimal shows a minimal wizard (Welcome → Progress → Finish).
|
||||
-->
|
||||
<Property Id='WIXUI_EXITDIALOGOPTIONALCHECKBOXTEXT' Value='Launch Open CAD Studio' />
|
||||
<Property Id='WIXUI_EXITDIALOGOPTIONALCHECKBOX' Value='1' />
|
||||
|
||||
<!--
|
||||
Start the installed exe after the wizard closes.
|
||||
asyncNoWait lets the installer exit cleanly while the app starts.
|
||||
-->
|
||||
<CustomAction
|
||||
Id='LaunchApplication'
|
||||
FileKey='OpenCADStudioEXE'
|
||||
ExeCommand=''
|
||||
Execute='immediate'
|
||||
Return='asyncNoWait'
|
||||
Impersonate='yes' />
|
||||
|
||||
<UI>
|
||||
<UIRef Id='WixUI_Minimal' />
|
||||
<Publish
|
||||
Dialog='ExitDialog'
|
||||
Control='Finish'
|
||||
Event='DoAction'
|
||||
Value='LaunchApplication'>WIXUI_EXITDIALOGOPTIONALCHECKBOX = 1 AND NOT Installed</Publish>
|
||||
</UI>
|
||||
|
||||
</Product>
|
||||
</Wix>
|
||||
|
|
|
|||
Loading…
Reference in a new issue