> -----Original Message-----
> From: Peter Stein [mailto:pst...@instec-corp.com]
> Sent: Thursday, July 28, 2011 4:14 PM
> To: General discussion for Windows Installer XML toolset.
> Subject: Re: [WiX-users] RemoveExistingProducts doesn't work in 3.5
> 
> Not sure why this is so difficult to understand. The installer has components
> that are safe to install in some environments/contexts but not in others. Yes,
> the installer could be decomposed into multiple installers each of which only
> installs a single feature but that's just plain goofy as the users have the
> wherewithal to know which feature is appropriate for their install. As a 
> safety
> precaution we simply don't want unneeded executables installed when they
> don't need to be because the individuals using the software aren't
> necessarily the same ones who installed it. You're misinterpreting something
> fairly straightforward because you are looking at it through the filter of 
> WiX.
> 

There is no WiX filter here. I don't think we were discussing having multiple 
packages at all... We were talking about feature/component composition within a 
single package. This is strictly a Windows Installer concept that WiX (not the 
same thing) allows you to define using a XML syntax. WiX doesn't set the rules 
here. Windows Installer sets the rules. Now, if you are trying to say that I 
have a Windows Installer filter on then, yes, you are correct and I would argue 
that's appropriate since you are trying to author a Windows Installer package!

To see what the Windows Installer SDK (not WiX) has to say about 
feature/component composition see 
http://msdn.microsoft.com/en-us/library/aa370561.aspx

> And no, I'm not using a directory path too early. NO, NO, NO!
> In fact the problem is the exact opposite I can't use it early enough. I 
> clearly
> said "after CostFinalize" because only then is the DM initialized. I want to
> move the whole dialog chain towards the front of the InstallUISequence as
> far as it can go, but there are dependencies on the standard UI actions.
> 

You would not be getting DM uninitialized errors if you were not trying to use 
the directory paths before they are available. Again, this is how Windows 
Installer works. WiX does not have anything to do with this.

> By now it should be clear what I'm trying to do. A feature dialog is being
> executed *after* CostFinalize and therefore *before* ExecuteAction. This
> dialog determines the set of features to be installed. But the actual
> installation ignores this information. I know why, because it needs to be
> available *before* CostFinalize (see description). But in order to make it
> available *before* the dialog chain would need to be moved up in the
> sequence, something that can't happen because of the DM dependency
> (and possibly others). I think this pretty clearly sums it up.
> 

Sounds like you are trying to setup an execution sequence that doesn't work. 
See http://msdn.microsoft.com/en-us/library/aa372039.aspx for the Windows 
Installer SDK's (not WiX) suggestion for a base InstallUISequence.  The table 
in that page tells me that you are trying to author something that won't work.

> I'm not trying to sabotage anything, just trying to use a tool to do something
> *very* reasonable. WiX doesn't seem to have the correct coupling between
> the UI and control logic. Or the user documentation that explains how to
> achieve that. Or both. Even a new CS grad knows that you don't start
> processing inputs before the connected UI has even served them up!
>

Actually, that previous paragraph is the exact definition of sabotage. Windows 
Installer (not WiX) says that directory paths are not available until after 
CostFinalize (http://msdn.microsoft.com/en-us/library/aa368048.aspx). Windows 
Installer (not WiX) suggests that all of your UI dialogs execute *after* 
CostFinalize. You (not WiX) are trying to change the InstallUISequence to 
something that makes more sense to you but does not take into consideration how 
the Windows Installer engine works (again, not WiX).

Your definition of reasonable doesn't matter if it contradicts the framework 
you are trying to use, for better or for worse. Windows Installer (not WiX) 
works a particular way and I have found that it works really well if you don't 
do anything to upset it. I would say that you are doing a lot to upset it and 
Windows Installer (not WiX) is complaining heavily.

WiX (Windows Installer XML) is a XML syntax for defining Windows Installer 
packages that are consumed by the Windows Installer engine. WiX does not have 
the ability to change Windows Installer no more than InstallShield can. There 
are some setup authoring tools that do not use Windows Installer at all! NSIS 
is an example that comes to mind immediately. If you are going to use WiX as 
your setup authoring tool then you must follow the rules set by Windows 
Installer.

Edwin G. Castro
Software Developer - Staff
Digital Channels
Fiserv
Office: 503-746-0643
Fax: 503-617-0291
www.fiserv.com
Please consider the environment before printing this e-mail

------------------------------------------------------------------------------
Got Input?   Slashdot Needs You.
Take our quick survey online.  Come on, we don't ask for help often.
Plus, you'll get a chance to win $100 to spend on ThinkGeek.
http://p.sf.net/sfu/slashdot-survey
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to