Maybe there is a bug in the WiXUI. I have never used WiX's UI in any product
I've shipped, and we recently started shipping languages that Windows
Installer's UI doesn't support very well at all, so we dropped in-MSI UI
entirely when we went with bootstrappers to manage our UI in a unified way
for our suite (similar to what Office and Developer Division at MSFT had
already done).

Looking closely at the source code, I don't see the expected "EndDialog"
publish event. The Property is set from pushing the Remove button and
something is supposed to register that as a REMOVE=ALL type setting
(eventually) but Next is disabled in that window and no other events seem to
be triggered looking at the source code.

I need to push this back to the WiX team to see who knows how WiXUI is put
together and how maintenance-mode UI is supposed to work.

-----Original Message-----
From: little.forest [mailto:little.for...@ymail.com] 
Sent: Tuesday, September 01, 2009 4:23 PM
To: General discussion for Windows Installer XML toolset.
Subject: Re: [WiX-users] How to add a dialog box when uninstall

The mail was sent before it was finished. Let me continue.

Ok, I went a little trouble to get the MaintenanceTypeDlg.wxs from the Wix
source and put it in my project. I renamed it as MyMaintenanceTypeDlg.wxs.
Then I removed this line:
<Condition Action="disable">ARPNOREMOVE</Condition>

I also changed MyWixUI_InstallDir.wxs for this line to use the changed
MaintenanceTypeDlg:

<Publish Dialog="MaintenanceWelcomeDlg" Control="Next" Event="NewDialog"
Value="MyMaintenanceTypeDlg">1</Publish>


Then I compiled and run. I did see the [Remove] button, but when I clicked
on it, nothing happened.

Here is the InstallUISequence table from msi:
AppSearch               50
CostInitialize          800
FileCost                900
CostFinalize            1000
FatalError              -3
UserExit                -2
MyExitDialog            -1
ExecuteAction           1300
PrepareDlg              49
ProgressDlg             1299
ResumeDlg       Installed AND (RESUME OR Preselected)   1297
WelcomeDlg      NOT Installed   1298
MaintenanceWelcomeDlg   Installed AND NOT RESUME AND NOT Preselected    1296
NewerVersionDetected    NEWAPPFOUND     201
LaunchConditions                100
FindRelatedProducts             200
ValidateProductID               700


Here is the log when I uninstalled it:
MSI (c) (94:B8) [16:20:58:774]: Doing action: MaintenanceWelcomeDlg
MSI (c) (94:B8) [16:20:58:774]: Note: 1: 2205 2:  3: ActionText 
Action 16:20:58: MaintenanceWelcomeDlg. 
Action start 16:20:58: MaintenanceWelcomeDlg.
Action 16:20:58: MaintenanceWelcomeDlg. Dialog created
MSI (c) (94:CC) [16:20:58:852]: PROPERTY CHANGE: Modifying CostingComplete
property. Its current value is '0'. Its new value: '1'.
MSI (c) (94:CC) [16:20:58:852]: Note: 1: 2205 2:  3: BindImage 
MSI (c) (94:CC) [16:20:58:852]: Note: 1: 2205 2:  3: ProgId 
MSI (c) (94:CC) [16:20:58:852]: Note: 1: 2205 2:  3: PublishComponent 
MSI (c) (94:CC) [16:20:58:852]: Note: 1: 2205 2:  3: SelfReg 
MSI (c) (94:CC) [16:20:58:852]: Note: 1: 2205 2:  3: Extension 
MSI (c) (94:CC) [16:20:58:852]: Note: 1: 2205 2:  3: Font 
MSI (c) (94:CC) [16:20:58:852]: Note: 1: 2205 2:  3: Class 
MSI (c) (94:CC) [16:20:58:852]: Note: 1: 2727 2: 
MSI (c) (94:CC) [16:20:59:727]: Note: 1: 2205 2:  3: Error 
MSI (c) (94:CC) [16:20:59:727]: Note: 1: 2228 2:  3: Error 4: SELECT
`Message` FROM `Error` WHERE `Error` = 2898 
Info 2898. WixUI_Font_Title, Tahoma, 1
Action 16:20:59: MyMaintenanceTypeDlg. Dialog created
MSI (c) (94:CC) [16:21:01:805]: PROPERTY CHANGE: Adding WixUI_InstallMode
property. Its value is 'Remove'.
Action 16:21:04: CancelDlg. Dialog created
Action ended 16:21:05: MaintenanceWelcomeDlg. Return value 2.
MSI (c) (94:B8) [16:21:05:446]: Doing action: UserExit
MSI (c) (94:B8) [16:21:05:446]: Note: 1: 2205 2:  3: ActionText 
Action 16:21:05: UserExit. 
Action start 16:21:05: UserExit.
Action 16:21:05: UserExit. Dialog created
Action ended 16:21:06: UserExit. Return value 2.
Action ended 16:21:06: INSTALL. Return value 2.



Thanks.





________________________________
From: Blair <os...@live.com>
To: General discussion for Windows Installer XML toolset.
<wix-users@lists.sourceforge.net>
Sent: Tuesday, September 1, 2009 3:25:49 PM
Subject: Re: [WiX-users] How to add a dialog box when uninstall

In your copy of MaintenanceTypeDlg.wxs remove the condition on the Remove
button. That is the button you want to click to uninstall from the UI.

-----Original Message-----
From: little.forest [mailto:little.for...@ymail.com] 
Sent: Tuesday, September 01, 2009 3:10 PM
To: General discussion for Windows Installer XML toolset.
Subject: Re: [WiX-users] How to add a dialog box when uninstall

Thanks Blair!


Here is the InstallUISequence table:
AppSearch        50
CostInitialize        800
FileCost        900
CostFinalize        1000
FatalError        -3
UserExit        -2
MyExitDialog        -1
ExecuteAction        1300
PrepareDlg        49
ProgressDlg        1299
ResumeDlg    Installed AND (RESUME OR Preselected)    1297
WelcomeDlg    NOT Installed    1298
MaintenanceWelcomeDlg    Installed AND NOT RESUME AND NOT Preselected
1296
NewerVersionDetected    NEWAPPFOUND    201
LaunchConditions        100
FindRelatedProducts        200
ValidateProductID        700


Here is the log when I run msi again to try to uninstall it. What I did were
just: start the msi, saw the 'Welcome to the app 3.0 Setup Wizard', clicked
[Next] button, clicked [Change] button, nothing happened though. I then
click the [Cancel] to exit:
MSI (c) (A0:F8) [15:01:14:290]: Doing action: MaintenanceWelcomeDlg
MSI (c) (A0:F8) [15:01:14:290]: Note: 1: 2205 2:  3: ActionText 
Action 15:01:14: MaintenanceWelcomeDlg. 
Action start 15:01:14: MaintenanceWelcomeDlg.
Action 15:01:14: MaintenanceWelcomeDlg. Dialog created
MSI (c) (A0:38) [15:01:14:352]: PROPERTY CHANGE: Modifying CostingComplete
property. Its current value is '0'. Its new value: '1'.
MSI (c) (A0:38) [15:01:14:352]: Note: 1: 2205 2:  3: BindImage 
MSI (c) (A0:38) [15:01:14:352]: Note: 1: 2205 2:  3: ProgId 
MSI (c) (A0:38) [15:01:14:352]: Note: 1: 2205 2:  3: PublishComponent 
MSI (c) (A0:38) [15:01:14:352]: Note: 1: 2205 2:  3: SelfReg 
MSI (c) (A0:38) [15:01:14:352]: Note: 1: 2205 2:  3: Extension 
MSI (c) (A0:38) [15:01:14:352]: Note: 1: 2205 2:  3: Font 
MSI (c) (A0:38) [15:01:14:352]: Note: 1: 2205 2:  3: Class 
MSI (c) (A0:38) [15:01:14:352]: Note: 1: 2727 2: 
MSI (c) (A0:38) [15:01:15:352]: Note: 1: 2205 2:  3: Error 
MSI (c) (A0:38) [15:01:15:352]: Note: 1: 2228 2:  3: Error 4: SELECT
`Message` FROM `Error` WHERE `Error` = 2898 
Info 2898. WixUI_Font_Title, Tahoma, 1
Action 15:01:15: MaintenanceTypeDlg. Dialog created
MSI (c) (A0:38) [15:01:16:884]: PROPERTY CHANGE: Adding WixUI_InstallMode
property. Its value is 'Change'.
Action 15:01:20: CancelDlg. Dialog created
Action ended 15:01:21: MaintenanceWelcomeDlg. Return value 2.
MSI (c) (A0:F8) [15:01:21:634]: Doing action: UserExit
MSI (c) (A0:F8) [15:01:21:634]: Note: 1: 2205 2:  3: ActionText 
Action 15:01:21: UserExit. 
Action start 15:01:21: UserExit.
Action 15:01:21: UserExit. Dialog created
Action ended 15:01:22: UserExit. Return value 2.
Action ended 15:01:22: INSTALL. Return value 2.






________________________________
From: Blair <os...@live.com>
To: General discussion for Windows Installer XML toolset.
<wix-users@lists.sourceforge.net>
Sent: Tuesday, September 1, 2009 2:28:12 PM
Subject: Re: [WiX-users] How to add a dialog box when uninstall

>From Orca, what is in your InstallUISequence table?

What does a verbose debug log look like in the (client) phase? Does the
MaintenanceWelcomeDlg text show up at all?

-----Original Message-----
From: little.forest [mailto:little.for...@ymail.com] 
Sent: Tuesday, September 01, 2009 2:05 PM
To: General discussion for Windows Installer XML toolset.
Subject: Re: [WiX-users] How to add a dialog box when uninstall

Thanks Blair.


Sure, I totally agree that we should make it work first.

So I just added that MaintenanceWelcomeDlg line and tried. When
uninstalling, I hit the "Change" button, still nothing happens. Is there
something else I can try?

Many thanks.



________________________________
From: Blair <os...@live.com>
To: General discussion for Windows Installer XML toolset.
<wix-users@lists.sourceforge.net>
Sent: Tuesday, September 1, 2009 12:45:48 PM
Subject: Re: [WiX-users] How to add a dialog box when uninstall

Not sure why this would be needed, but try adding <UI><DialogRef
Id="MaintenanceWelcomeDlg/></UI> to your product.

It is possible to add a shortcut for uninstallation where you get setup the
UI and other characteristics of the uninstallation exactly how you want, but
it has to work first, so let's concentrate on that first. It is incompatible
with Windows Logo to create that shortcut, but nothing technical prevents
you from creating it.

-----Original Message-----
From: little.forest [mailto:little.for...@ymail.com] 
Sent: Tuesday, September 01, 2009 10:39 AM
To: General discussion for Windows Installer XML toolset.
Subject: Re: [WiX-users] How to add a dialog box when uninstall

Thanks Blair!

I checked, there is this line in WixUI_InstallDir.wxs:
<Property Id="ARPNOMODIFY" Value="1" />

So I removed this line. And added these two lines in my main wxs:
<Property Id ="ARPNOREMOVE" Value="1" />
<Property Id ="ARPNOREPAIR" Value ="1" />


I Built it and installed it. After that, I double clicked the msi again, I
see the "Repair" and "Remove" buttons are grayed out, the "Change" button is
clickable. I clicked the 'Change' button, but there is nothing happening.

What should I do the make "Change" button work? Also, is there other ways to
trigger uninstallation process by not double clicking the original msi file?
For our end users, I guess no one would do the uninstallation by clicking
the msi file. The reason for that is, they may just download the file to a
temp download folder or so, install it, and then forget about the msi file
location. If now we tell them to "double click the original msi to uninstall
it", it'll be not that practical. Ideally, uninstalling the application by
clicking the shortcut in [Start]->[All Programs] system menu. Is it
possible?
Thanks.



________________________________
From: Blair <os...@live.com>
To: General discussion for Windows Installer XML toolset.
<wix-users@lists.sourceforge.net>
Sent: Monday, August 31, 2009 7:50:10 PM
Subject: Re: [WiX-users] How to add a dialog box when uninstall

If "Change" is grayed out you will not get the installer UI you are looking
for. Is ARPNOMODIFY set perchance?

After you install, what do you see if you double-click the MSI again? You
should get the "Change" experience, which is your starting point to show a
modal dialog during your uninstall experience.

-----Original Message-----
From: little.forest [mailto:little.for...@ymail.com] 
Sent: Monday, August 31, 2009 5:28 PM
To: General discussion for Windows Installer XML toolset.
Subject: Re: [WiX-users] How to add a dialog box when uninstall

By the way, I added this: <Property Id ="ARPNOREMOVE" Value="1" />

Then I run the msi again, and I saw the "Change" and "Remove" buttons were
grey out. There was only the "Repair" button available. Is this correct?
Also, if I run uninstallation from [start]->[All Programs], I didn't even
see this UI. I only saw the basic uninstallation progress bar.
Thanks.



________________________________
From: little.forest <little.for...@ymail.com>
To: General discussion for Windows Installer XML toolset.
<wix-users@lists.sourceforge.net>
Sent: Monday, August 31, 2009 5:07:42 PM
Subject: Re: [WiX-users] How to add a dialog box when uninstall

I kept searching for the answer about this issue. But I couldn't find any
example to make it work.
Can you Wix experts point me out? What else I need to do to show UI in
uninstallation, namely, "enable maintenance mode"? And further how to add a
radio button etc. to enable "remove user data option" during uninstallation?

(Uninstallation: I mean, the end user clicks the uninstall shortcut from
[start]=>[All Programs]. I don't mean the end user re-run the msi again, or
through ARP, or through command line - because normally all of our end users
don't run uninstallation these ways.)



________________________________
From: little.forest <little.for...@ymail.com>
To: General discussion for Windows Installer XML toolset.
<wix-users@lists.sourceforge.net>
Sent: Monday, August 31, 2009 4:19:01 PM
Subject: Re: [WiX-users] How to add a dialog box when uninstall

Hi Aris,

Thanks! I added this in code, then the "Remove" button is gone in ARP:
<Property Id ="ARPNOREMOVE" Value="1" />

But the uninstallation is still the simple progress bar. Could you please
tell me how to "enable maintenance mode"?

Thanks.



________________________________
From: Aris J. Green <gree...@cox.net>
To: General discussion for Windows Installer XML toolset.
<wix-users@lists.sourceforge.net>
Sent: Thursday, August 27, 2009 10:20:29 AM
Subject: Re: [WiX-users] How to add a dialog box when uninstall

Disable uninstall from Add/Remove Programs, enable maintenance mode,
which will show a GUI during uninstall.  Then allow user to uninstall
from maintenance, typically through a radio button selection that sets
REMOVE=ALL.  The you can prompt the user for what you need (e.g. a SQL
password to drop a database, etc.)

Set up the silent uninstall  to proceed from the command line silently
if you want this feature by passing in the proper parameters from the
command line (e.g. "SAPWD=<BASE64 Encrypted Value>
SERVER=<MACHINEZ_SOMEWHERE>").  But you won't be able to run this from
ARP although.

Regards,
greenaj

On Wed, 2009-08-26 at 09:18 +0200, Sebastian Brand (Instyler Software)
wrote:

> Hello,
> 
> Windows Installer executes uninstall in Silent mode (no UI) mode only. To
> show a dialog, you'll have to create a custom action to show a dialog,
then
> schedule that during uninstall.
> 
> 
> Best regards,
> Sebastian Brand
> 
> Instyler Setup - Creating WiX-based MSI installations, elegantly.
> http://www.instyler.com
> 
> 
> -----Original Message-----
> From: little.forest [mailto:little.for...@ymail.com] 
> Sent: Wednesday, August 26, 2009 09:04
> To: wix-users@lists.sourceforge.net
> Subject: [WiX-users] How to add a dialog box when uninstall
> 
> Hi,
> 
> We're using WiX 3.0. How to add a dialog box when uninstall? 
> 
> We'd like to ask the end user if they want to delete their settings files
in
> AppData\Company\Product folder. If the answer is Yes, then we'll need to
> delete that folder. And we only want this dialog box showing up when
> manually uninstall by either click the uninstall shortcut or from ARP in
> control panel. We do NOT want this dialog showing up when the user doing a
> major upgrade(installing a higher version, the old version is
uninstalled).
> 
> Thanks.
> /Brian
> 
> 
>       __________________________________________________________________
> Be smarter than spam. See how smart SpamGuard is at giving junk email the
> boot with the All-new Yahoo! Mail.  Click on Options in Mail and switch to
> New Mail today or register for free at http://mail.yahoo.ca
>
----------------------------------------------------------------------------
> --
> Let Crystal Reports handle the reporting - Free Crystal Reports 2008
30-Day
> trial. Simplify your report design, integration and deployment - and focus
> on what you do best, core application coding. Discover what's new with
> Crystal Reports now.  http://p.sf.net/sfu/bobj-july
> _______________________________________________
> WiX-users mailing list
> WiX-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/wix-users
> 
> 
>
----------------------------------------------------------------------------
--
> Let Crystal Reports handle the reporting - Free Crystal Reports 2008
30-Day 
> trial. Simplify your report design, integration and deployment - and focus
on 
> what you do best, core application coding. Discover what's new with 
> Crystal Reports now.  http://p.sf.net/sfu/bobj-july
> _______________________________________________
> WiX-users mailing list
> WiX-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/wix-users
----------------------------------------------------------------------------
--
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus
on 
what you do best, core application coding. Discover what's new with 
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users



      __________________________________________________________________
Looking for the perfect gift? Give the gift of Flickr! 

http://www.flickr.com/gift/
----------------------------------------------------------------------------
--
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus
on 
what you do best, core application coding. Discover what's new with 
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users



      __________________________________________________________________
Yahoo! Canada Toolbar: Search from anywhere on the web, and bookmark your
favourite sites. Download it now
http://ca.toolbar.yahoo.com.
----------------------------------------------------------------------------
--
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus
on 
what you do best, core application coding. Discover what's new with 
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users



      __________________________________________________________________
Looking for the perfect gift? Give the gift of Flickr! 

http://www.flickr.com/gift/
----------------------------------------------------------------------------
--
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus
on 
what you do best, core application coding. Discover what's new with 
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


----------------------------------------------------------------------------
--
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus
on 
what you do best, core application coding. Discover what's new with 
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users



      __________________________________________________________________
Looking for the perfect gift? Give the gift of Flickr! 

http://www.flickr.com/gift/
----------------------------------------------------------------------------
--
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus
on 
what you do best, core application coding. Discover what's new with 
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


----------------------------------------------------------------------------
--
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus
on 
what you do best, core application coding. Discover what's new with 
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users



      __________________________________________________________________
Get a sneak peak at messages with a handy reading pane with All new Yahoo!
Mail: http://ca.promos.yahoo.com/newmail/overview2/
----------------------------------------------------------------------------
--
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus
on 
what you do best, core application coding. Discover what's new with 
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


----------------------------------------------------------------------------
--
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus
on 
what you do best, core application coding. Discover what's new with 
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users



      __________________________________________________________________
Looking for the perfect gift? Give the gift of Flickr! 

http://www.flickr.com/gift/
----------------------------------------------------------------------------
--
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus
on 
what you do best, core application coding. Discover what's new with 
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


----------------------------------------------------------------------------
--
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus
on 
what you do best, core application coding. Discover what's new with 
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users



      __________________________________________________________________
Be smarter than spam. See how smart SpamGuard is at giving junk email the
boot with the All-new Yahoo! Mail.  Click on Options in Mail and switch to
New Mail today or register for free at http://mail.yahoo.ca
----------------------------------------------------------------------------
--
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus
on 
what you do best, core application coding. Discover what's new with 
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus on 
what you do best, core application coding. Discover what's new with 
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to