[WiX-users] WiX 3.0: How to CopyFile

2009-02-20 Thread Little Forest
Essentially, what I'd like to do is to "install one file in two folders". 

We have one file called app.ico. It needs to be installed in 
"ProgramFiles\MyCompany\MyApp" folder and "ProgramFiles\MyCompany\MyApp\Images" 
folder. - Please don't ask me why, this is the requirement.

Anyways, I searched the forum. It seems I'll have to "CopyFile". But I don't 
have a clue how to make CopyFile working in WiX 3.0.

I tried that, but the file only got installed in "ProgramFiles\MyCompany\MyApp" 
folder, it's never installed in "ProgramFiles\MyCompany\MyApp\Images" folder. 
The CopyFile doesn't work. 

Here is my code:

   




   

... ...

... ...








... ...


Can anyone correct me and give the source code solution?

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
--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] Installing backed up scheduled tasks - Windows 2003

2009-02-20 Thread Thomas S. Trias
The Scheduled Tasks folder is only special because of a shell extension 
(much like the Temporary Internet Files or Downloaded Program Files 
folders).  The underlying  data is just a bunch of .job files in a 
directory (typically %SystemRoot%\Tasks).  The one issue you may 
encounter is that Vista introduced an overhauled job file.  I can't say 
whether the task scheduler in Vista is backwards compatible or not.  You 
might be better off creating (begging for?) a task scheduler extension 
to WiX that use the Task Scheduler COM interfaces to do their work 
(http://msdn.microsoft.com/en-us/library/aa383614(VS.85).aspx).

Thanks,

Thomas S. Trias
Senior Developer
Artizan Internet Services
http://www.artizan.com/



 Original Message  
Subject: [WiX-users] Installing backed up scheduled tasks - Windows 2003
From: MacDiarmid, James D 
To: General discussion for Windows Installer XML toolset.   
 
Date: 2/20/2009 3:50 PM
> In my install I need to have some sort of way to install about 15 .job
> scheduled tasks.  When I look at the tasks folder it looks like an
> object and not a regular folder.  Any ideas on how I would go about
> "copying" them over?
>
> Thanks,
> Jim
>
>
>   


--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] Passing data between deferred custom actions

2009-02-20 Thread Thomas S. Trias
As a delimiter, or for serializing .NET objects?  Seems like a rather 
long delimiter.  :-)

Thomas S. Trias
Senior Developer
Artizan Internet Services
http://www.artizan.com/



 Original Message  
Subject: Re: [WiX-users] Passing data between deferred custom actions
From: Chad Miles 
To: tomtr...@artizan.com, General discussion for Windows Installer XML 
toolset. 
Date: 2/20/2009 5:54 PM
> A GUID works nicely... :)
>
> On Fri, Feb 20, 2009 at 6:10 PM, Thomas S. Trias  > wrote:
>
> Use a different delimiter; the WiX CA's use EUR.  I've been tempted to
> use XML (just because it makes reading the logs so much easier -
> probably overkill for anything short of serializing .NET objects)...
>
> Thanks,
>
> Thomas S. Trias
> Senior Developer
> Artizan Internet Services
> http://www.artizan.com/
>
>
>
>  Original Message  
> Subject: Re: [WiX-users] Passing data between deferred custom actions
> From: John Nannenga  >
> To: General discussion for Windows Installer XML toolset.
>   >
> Date: 2/20/2009 12:01 PM
> > What happens when the data value you need contains what appears
> to be the delimiter between independent properties within the
> CustomActionData class?  "semi-colon"...
> >
> >
> >
> >
> >
> > -Original Message-
> > From: Rob Mensching [mailto:r...@wixtoolset.org
> ]
> > Sent: Tuesday, February 17, 2009 10:52 PM
> > To: General discussion for Windows Installer XML toolset.
> > Subject: Re: [WiX-users] Passing data between deferred custom
> actions
> >
> > Most of the WiX toolset CustomActions do this.
> >
> > Eitan Behar wrote:
> >
> >> Does not look like fun, but it's doable ! Thanks !
> >>
> >> Etian
> >>
> >>
> >> On Tue, Feb 17, 2009 at 3:38 PM, Christopher Painter <
> >> chr...@deploymentengineering.com
> > wrote:
> >>
> >>
> >>
> >>> You'll want to look at the CustomActionData class in DTF as
> described here:
> >>>
> >>>
> http://www.mail-archive.com/wix-users@lists.sourceforge.net/msg17875.html
> >>>
> >>> In a nutshell:
> >>>
> >>> In your immeadiate custom action, you instantiate the class,
> stuff it with
> >>> data and then serialize it out to a property.
> >>>
> >>> In your deferred custom action you read the CustomActionData
> property and
> >>> pass it to the class constructor for deserialziation back into
> your class
> >>> with all of it's data.
> >>>
> >>> As far as how to schedule these custom actions there are
> several patterns:
> >>>
> >>> 1) 1 immeadiate to 1 deferred relationship
> >>> 2) 1 immeadiate to multiple deferred relationship
> >>> 3) 1 immeadiate that calls DoAction to schedule the deferred (
> this is the
> >>> way Jason describes in the above link. )
> >>>
> >>> When using #1 or #2, remember the immeadiate must be scheduled
> before the
> >>> deferred and the name of the property(s) to be set is the name
> of the
> >>> deferred custom actions(s).  This is how MSI makes the join.
> >>>
> >>> Christopher Painter, Author of Deployment Engineering Blog
> >>> Have a hot tip, know a secret or read a really good thread
> that deserves
> >>> attention? E-Mail Me
> >>>
> >>>
> >>> --- On Tue, 2/17/09, Eitan Behar  > wrote:
> >>>
> >>>
> >>>
>  From: Eitan Behar mailto:ei...@baconao.net>>
>  Subject: Re: [WiX-users] Passing data between deferred custom
> actions
>  To: chr...@deploymentengineering.com
> , "General discussion for
> Windows
> 
> 
> >>> Installer XML toolset."  >
> >>>
> >>>
>  Date: Tuesday, February 17, 2009, 6:47 AM
>  DTF C#
> 
> 
> 
>  On Tue, Feb 17, 2009 at 2:05 PM, Christopher Painter <
>  chr...@deploymentengineering.com
> > wrote:
> 
> 
> 
> > What language is the CA's written in?
> >
> > Christopher Painter, Author of Deployment Engineering
> >
> >
>  Blog
> 
> 
> > Have a hot tip, know a secret or read a really good
> >
> >
>  thread that deserves
> 
> 
> > attention? E-Mail Me
> >
> >
> > --- On Tue, 2/17/09, Eitan Behar
> >
> >
>  mailto:ei...@baconao.net>> wrote:
> 
> 
> >> From: Eitan Behar  

Re: [WiX-users] Passing data between deferred custom actions

2009-02-20 Thread Chad Miles
A GUID works nicely... :)

On Fri, Feb 20, 2009 at 6:10 PM, Thomas S. Trias wrote:

> Use a different delimiter; the WiX CA's use EUR.  I've been tempted to
> use XML (just because it makes reading the logs so much easier -
> probably overkill for anything short of serializing .NET objects)...
>
> Thanks,
>
> Thomas S. Trias
> Senior Developer
> Artizan Internet Services
> http://www.artizan.com/
>
>
>
>  Original Message  
> Subject: Re: [WiX-users] Passing data between deferred custom actions
> From: John Nannenga 
> To: General discussion for Windows Installer XML toolset.
>  
>  Date: 2/20/2009 12:01 PM
> > What happens when the data value you need contains what appears to be the
> delimiter between independent properties within the CustomActionData class?
>  "semi-colon"...
> >
> >
> >
> >
> >
> > -Original Message-
> > From: Rob Mensching [mailto:r...@wixtoolset.org]
> > Sent: Tuesday, February 17, 2009 10:52 PM
> > To: General discussion for Windows Installer XML toolset.
> > Subject: Re: [WiX-users] Passing data between deferred custom actions
> >
> > Most of the WiX toolset CustomActions do this.
> >
> > Eitan Behar wrote:
> >
> >> Does not look like fun, but it's doable ! Thanks !
> >>
> >> Etian
> >>
> >>
> >> On Tue, Feb 17, 2009 at 3:38 PM, Christopher Painter <
> >> chr...@deploymentengineering.com> wrote:
> >>
> >>
> >>
> >>> You'll want to look at the CustomActionData class in DTF as described
> here:
> >>>
> >>>
> http://www.mail-archive.com/wix-users@lists.sourceforge.net/msg17875.html
> >>>
> >>> In a nutshell:
> >>>
> >>> In your immeadiate custom action, you instantiate the class, stuff it
> with
> >>> data and then serialize it out to a property.
> >>>
> >>> In your deferred custom action you read the CustomActionData property
> and
> >>> pass it to the class constructor for deserialziation back into your
> class
> >>> with all of it's data.
> >>>
> >>> As far as how to schedule these custom actions there are several
> patterns:
> >>>
> >>> 1) 1 immeadiate to 1 deferred relationship
> >>> 2) 1 immeadiate to multiple deferred relationship
> >>> 3) 1 immeadiate that calls DoAction to schedule the deferred ( this is
> the
> >>> way Jason describes in the above link. )
> >>>
> >>> When using #1 or #2, remember the immeadiate must be scheduled before
> the
> >>> deferred and the name of the property(s) to be set is the name of the
> >>> deferred custom actions(s).  This is how MSI makes the join.
> >>>
> >>> Christopher Painter, Author of Deployment Engineering Blog
> >>> Have a hot tip, know a secret or read a really good thread that
> deserves
> >>> attention? E-Mail Me
> >>>
> >>>
> >>> --- On Tue, 2/17/09, Eitan Behar  wrote:
> >>>
> >>>
> >>>
>  From: Eitan Behar 
>  Subject: Re: [WiX-users] Passing data between deferred custom actions
>  To: chr...@deploymentengineering.com, "General discussion for Windows
> 
> 
> >>> Installer XML toolset." 
> >>>
> >>>
>  Date: Tuesday, February 17, 2009, 6:47 AM
>  DTF C#
> 
> 
> 
>  On Tue, Feb 17, 2009 at 2:05 PM, Christopher Painter <
>  chr...@deploymentengineering.com> wrote:
> 
> 
> 
> > What language is the CA's written in?
> >
> > Christopher Painter, Author of Deployment Engineering
> >
> >
>  Blog
> 
> 
> > Have a hot tip, know a secret or read a really good
> >
> >
>  thread that deserves
> 
> 
> > attention? E-Mail Me
> >
> >
> > --- On Tue, 2/17/09, Eitan Behar
> >
> >
>   wrote:
> 
> 
> >> From: Eitan Behar 
> >> Subject: [WiX-users] Passing data between
> >>
> >>
>  deferred custom actions
> 
> 
> >> To: "General discussion for Windows
> >>
> >>
>  Installer XML toolset." <
> 
> 
> > wix-users@lists.sourceforge.net>
> >
> >
> >> Date: Tuesday, February 17, 2009, 2:40 AM
> >> Hi,
> >>
> >> Is there a proper method to pass data between
> >>
> >>
>  deferred
> 
> 
> >> custom actions ? I
> >> have a bunch of chained custom actions and need
> >>
> >>
>  to pass
> 
> 
> >> data between them,
> >> actually, just a boolean value
> >>
> >>
>  "telling" the rest
> 
> 
> >> of the ca whether to
> >> continue.
> >>
> >> Thanks,
> >>
> >> Eitan
> >>
> >>
> >>
> >>>
> --
> >>>
> >>>
> >> Open Source Business Conference (OSBC), March
> >>
> >>
>  24-25, 2009,
> 
> 
> >> San Francisco, CA
> >> -OSBC tackles the biggest issue in open source:
> >>
> >>
>  Open
> 
> 
> >> Sourcing the Enterprise
> >> -Strategies to boost innovation and cut costs
> >>
> >>
>  with open
> 
> 
> >> source participation
> >> -Receive a $600 discount

Re: [WiX-users] Parsing a version string in WiX

2009-02-20 Thread Chad Miles
I've had to do something similar to this.  Come Monday if you don't have any
leads I'll help ya.

On Fri, Feb 20, 2009 at 6:30 PM, Dan Giambalvo <
danie...@windows.microsoft.com> wrote:

> I'm trying to add a Condition to my WiX based installer to make sure that
> IE8 is installed on the machine.  I used a RegistrySearch to find the
> appropriate reg key with the currently installed version of IE.
>  Unfortunately, it is in a 4-part form such as 8.0.6001.18372.  I want to
> just grab the first part, and make sure it's >= 8.  I can't seem to find any
> information on how I might parse or break-up the string so that I can do a
> simple compare.
>
> Are there any good ideas for how to achieve this?  I'm hoping to avoid
> having to write a custom action just to get the IE version.
>
> Thanks!
> -Dan
>
> --
> Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco,
> CA
> -OSBC tackles the biggest issue in open source: Open Sourcing the
> Enterprise
> -Strategies to boost innovation and cut costs with open source
> participation
> -Receive a $600 discount off the registration fee with the source code:
> SFAD
> http://p.sf.net/sfu/XcvMzF8H
> ___
> WiX-users mailing list
> WiX-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/wix-users
>



-- 
Chad E. Miles
Software Engineer, Development
Interactive Intelligence, Inc.
chad.mi...@inin.com
317.715.8280 Office/Fax
--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] DTF - install, rollback and uninstall

2009-02-20 Thread Christopher Painter
neil-

 Didn't I send you an example of a data driven custom action pattern that 
publishes sql server reporting services reports?

I'm pretty sure in that example I used custom tables with joins back to the 
component table ( PK-FK relationship ) and an immeadiate CA that did the 
evaluation of which rows needed to be processed based on component state.

Now I don't recall if I actually did the work in a deferred custom action or 
not.   That may sound crazy not to have but the reality is I'm hitting a 
webservice on a remote machine to publish the reports so I don't want 
impersonatio and the API doesn't support transactional rollback anyways.  That 
scenario gets ugly regardless of what design pattern you choose.

Eitherway DTF's CustomActionData class makes it easy to build any serializale 
datatype you need to communicate your requirements to the deferred CA so 
getting the component action state data to the deferred isn't a big deal.



Christopher Painter, Author of Deployment Engineering Blog
Have a hot tip, know a secret or read a really good thread that deserves 
attention? E-Mail Me


--- On Fri, 2/20/09, Neil Sleightholm  wrote:

> From: Neil Sleightholm 
> Subject: Re: [WiX-users] DTF - install, rollback and uninstall
> To: "General discussion for Windows Installer XML toolset." 
> 
> Date: Friday, February 20, 2009, 5:06 PM
> I think I understand the component state approach but I am
> not sure this is possible with the current implementation of
> custom tables as I can't see how they can be associated
> with a component.
>  
> Neil
>  
> Neil Sleightholm
> X2 Systems Limited
> n...@x2systems.com  
>  
> 
> 
> 
> From: Rob Mensching [mailto:r...@wixtoolset.org]
> Sent: Fri 20/02/2009 09:58
> To: General discussion for Windows Installer XML toolset.
> Subject: Re: [WiX-users] DTF - install, rollback and
> uninstall
> 
> 
> 
> There is a helper function in wcautil that is usually a
> tell tale sign
> you've found the code ::WcaGetComponentToDo().  The old
> school way (most
> of serverca uses the old school) is to call
> WcaIsInstalling()/WcaIsReInstalling()/WcaIsUninstalling()
> to determine
> the scheduling.  WcaGetComponentToDo() is a nice wrapper
> that cleans up
> much of the confusion.
> 
> Using conditions to control your CustomAction
> install/uninstall
> behaviors is primitive and usually insufficient... but the
> most
> visible.  Data driven CustomActions that modify machine
> state via
> Resources should really use Component states.  That matches
> the design
> of the Windows Installer.
> 
> Neil Sleightholm wrote:
> > I don't suppose you could point me in the
> direction of the code that controls that for one for the WiX
> CA's so I can learn how to do it.
> >
> > Thanks
> >
> > Neil
> >
> > Neil Sleightholm
> > X2 Systems Limited
> > n...@x2systems.com 
> >
> >
> > 
> >
> > From: Bob Arnson [mailto:b...@joyofsetup.com]
> > Sent: Fri 20/02/2009 01:15
> > To: General discussion for Windows Installer XML
> toolset.
> > Subject: Re: [WiX-users] DTF - install, rollback and
> uninstall
> >
> >
> >
> > Neil Sleightholm wrote:
> >  
> >> Where is the detection or conditional calls in
> that? In most cases this
> >> seems to end up calling the same code but with a
> true/false code
> >> indicating install/uninstall.
> >>
> >>
> >
> > Some of them need to have very different -- or
> differently-timed --
> > behavior during install -v- uninstall but both still
> do their things
> > based on the component-level action state.
> >
> > --
> > sig://boB
> > http://joyofsetup.com/
> >
> >
> >
> >
> --
> > Open Source Business Conference (OSBC), March 24-25,
> 2009, San Francisco, CA
> > -OSBC tackles the biggest issue in open source: Open
> Sourcing the Enterprise
> > -Strategies to boost innovation and cut costs with
> open source participation
> > -Receive a $600 discount off the registration fee with
> the source code: SFAD
> > http://p.sf.net/sfu/XcvMzF8H
> > ___
> > WiX-users mailing list
> > WiX-users@lists.sourceforge.net
> > https://lists.sourceforge.net/lists/listinfo/wix-users
> >
> >
> >  
> 
> --
> Open Source Business Conference (OSBC), March 24-25, 2009,
> San Francisco, CA
> -OSBC tackles the biggest issue in open source: Open
> Sourcing the Enterprise
> -Strategies to boost innovation and cut costs with open
> source participation
> -Receive a $600 discount off the registration fee with the
> source code: SFAD
> http://p.sf.net/sfu/XcvMzF8H
> ___
> WiX-users mailing list
> WiX-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/wix-users
> 
> 
> 

Re: [WiX-users] Files in an MSI

2009-02-20 Thread Thomas S. Trias
That works; dark.exe can do it too.

Thomas S. Trias
Senior Developer
Artizan Internet Services
http://www.artizan.com/



 Original Message  
Subject: Re: [WiX-users] Files in an MSI
From: Jim Williams 
To: 'General discussion for Windows Installer XML toolset.'   
 
Date: 2/20/2009 11:49 AM
> You could try an administrative install:
>
>   msiexec /a xxx.msi
>
> Jim Williams
>
> -Original Message-
> From: MacDiarmid, James D [mailto:james.macdiar...@eds.com] 
> Sent: Friday, February 20, 2009 9:05 AM
> To: General discussion for Windows Installer XML toolset.
> Subject: [WiX-users] Files in an MSI
>
>
> Is there any way to extract the files to be installed from an MSI
> package? 
>
> Thanks,
> Jim
> --
> Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
> -OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
> -Strategies to boost innovation and cut costs with open source participation
> -Receive a $600 discount off the registration fee with the source code: SFAD
> http://p.sf.net/sfu/XcvMzF8H
> ___
> WiX-users mailing list
> WiX-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/wix-users
>
>
>
>   


--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


[WiX-users] Installing backed up scheduled tasks - Windows 2003

2009-02-20 Thread MacDiarmid, James D

In my install I need to have some sort of way to install about 15 .job
scheduled tasks.  When I look at the tasks folder it looks like an
object and not a regular folder.  Any ideas on how I would go about
"copying" them over?

Thanks,
Jim

--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


[WiX-users] Parsing a version string in WiX

2009-02-20 Thread Dan Giambalvo
I'm trying to add a Condition to my WiX based installer to make sure that IE8 
is installed on the machine.  I used a RegistrySearch to find the appropriate 
reg key with the currently installed version of IE.  Unfortunately, it is in a 
4-part form such as 8.0.6001.18372.  I want to just grab the first part, and 
make sure it's >= 8.  I can't seem to find any information on how I might parse 
or break-up the string so that I can do a simple compare.

Are there any good ideas for how to achieve this?  I'm hoping to avoid having 
to write a custom action just to get the IE version.

Thanks!
-Dan
--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] DTF - install, rollback and uninstall

2009-02-20 Thread Thomas S. Trias
Neil,

I've noticed that design pattern in the IIS extensions as well;  their 
modus operandi in the most recent WiX code I have is to include the 
install state and install action of the related component as part of 
their wrapped query data in the CustomActionData.  I'm not sure the 
reason behind that approach vs. having separate entry points; the 
obvious answer is that there are situations where web components will be 
both installed and uninstalled (maintenance mode? do patches and / or 
upgrades have the same possibility?), and we can be assured that 
everything will be ordered properly in the call to ConfigureIIsExec.  It 
also cuts down on the number of queries against the database and calls 
to CA's.  While I like the idea of discoverability via the conditions in 
the execute sequence table, that gets unduly complicated in light of 
multiple records associated with multiple components that have 
potentially different install states; I guess you would have to split 
things out on a feature by feature / component by component basis.  At 
that point, I'm not sure how you would associate a particular CA call 
with a given feature / component short of adding a whole bunch of 
properties that coincide with the CustomActionData for each CA call 
(which are only available for deferred actions).  Off the top of my 
head, I cannot figure out how one would establish the particular 
execution context (e.g execute sequence) if the same CA was sequenced 
multiple times.

As a side note to the maintainers of the Windows Installer API, gosh it 
it would sure be nice to be able to pass a string argument to a custom 
action via an additional formatted column in the CustomAction table, or 
better yet the sequence tables.  While a similar effect can be achieved 
via custom tables and immediate actions that set the CustomActionData 
for deferred actions, that definitely makes it more complicated, 
especially in light of my thoughts from the previous paragraph.

So, if there is the possibility of having to deal with multiple rows 
with varying install states, you will either need to include the state 
transition information in the CustomActionData or sequence multiple CA's 
that get the proper subsets of the data.  If you wanted to transparently 
condition the CA's, it would look like a god-awful check across multiple 
features and / or components.

Or I could be wrong. 

Thanks,

Thomas S. Trias
Senior Developer
Artizan Internet Services
http://www.artizan.com/



 Original Message  
Subject: Re: [WiX-users] DTF - install, rollback and uninstall
From: Neil Sleightholm 
To: General discussion for Windows Installer XML toolset.   
 
Date: 2/19/2009 3:41 PM
> I have to admit to being confused! Looking at the built in WiX custom
> actions I see code like this in their wixlibs:
>
>  DllEntry=nstallSqlData" Execute="immediate" Return="check" />
>  DllEntry=ninstallSqlData" Execute="immediate" Return="check" />
>
> 
>  Overridable=es">NOT SKIPUNINSTALLSQLDATA AND VersionNT >
> 400
>  Overridable=es">NOT SKIPINSTALLSQLDATA AND VersionNT > 400
> 
>
> Where is the detection or conditional calls in that? In most cases this
> seems to end up calling the same code but with a true/false code
> indicating install/uninstall.
>
> Neil
>
> -Original Message-
> From: Jason Ginchereau [mailto:jason...@microsoft.com] 
> Sent: 19 February 2009 17:50
> To: General discussion for Windows Installer XML toolset.
> Subject: Re: [WiX-users] DTF - install, rollback and uninstall
>
> Oh. To detect if the product is being uninstalled you need to check the
> REMOVE property: http://msdn.microsoft.com/en-us/library/aa371194.aspx.
> But of course you won't be able to access that from a CA running in
> deferred/rollback/commit mode. 
>
> Typically, uninstall custom actions are conditionally scheduled in the
> sequence table using the REMOVE=L condition, so the CA would not need
> to check for uninstall mode via an API.
>
>
> -Original Message-
> From: Neil Sleightholm [mailto:n...@x2systems.com] 
> Sent: Wednesday, February 18, 2009 11:59 PM
> To: General discussion for Windows Installer XML toolset.
> Subject: Re: [WiX-users] DTF - install, rollback and uninstall
>
> I took at look at that and couldn't figure out how you could tell it was
> being called during and uninstall. I am sure I am missing something
> obvious!
>  
> Neil
>  
> Neil Sleightholm
> X2 Systems Limited
> n...@x2systems.com  
>  
>
> 
>
> From: Jason Ginchereau [mailto:jason...@microsoft.com]
> Sent: Thu 19/02/2009 03:10
> To: General discussion for Windows Installer XML toolset.
> Subject: Re: [WiX-users] DTF - install, rollback and uninstall
>
>
>
> Use Session.GetMode(InstallRunMode) -- it's just a very thin wrapper
> around the MsiGetMode Win32 API
> (http://msdn.microsoft.com/en-us/library/aa370125.aspx)
>
>
> -Original Message-
> From: Neil Sleightholm [mailto:n...@x2systems.com

Re: [WiX-users] What keeps borking my ICE validation by registering VBScript and JScript under HKCU?

2009-02-20 Thread Thomas S. Trias
Yeah, right up there with advertised COM components.  

Thomas S. Trias
Senior Developer
Artizan Internet Services
http://www.artizan.com/


 Original Message  
Subject: Re: [WiX-users] What keeps borking my ICE validation by 
registeringVBScript and JScript under HKCU?
From: Rob Mensching 
To: General discussion for Windows Installer XML toolset.   
 
Date: 2/19/2009 7:40 PM
> Wow, new 
> bad guy.  See, lots of bad guys out there.
>
> SelfReg constantly?  Seriously, geez. 
>
>
> Moradi, Ari wrote:
>> I found the exact same problem and (after a lot of investigating) 
>> found that on my machine, it was PSPad causing the problems.  Every 
>> time I launched PSPad (ran the app, not install it), it was 
>> attempting to reregister vbscript.dll.  Since it runs unelevated, 
>> vbscript gets registered in my user account, which breaks vbscript.  
>> There was some setting I found in the application settings to make it 
>> stop attempting to register vbscript and that fixed the problem on my 
>> machine.  I mention it just in case you're using PSPad too.
>>
>> It became such a problem for me that seriously ended up sitting with 
>> procmon open while I worked.  I had it filtered to the vbscript 
>> registry values in HKCU and just waited until I did something that 
>> created the keys.  If you don't use PSPad, you might try the same 
>> thing to find out what's doing it on your machine.
>>
>> -Ari
>>
>> -Original Message-
>> From: Anthony Wieser [mailto:wix-l...@wieser-software.com]
>> Sent: Wednesday, February 18, 2009 1:42 AM
>> To: General discussion for Windows Installer XML toolset.
>> Subject: Re: [WiX-users] What keeps borking my ICE validation by 
>> registering VBScript and JScript under HKCU?
>>
>> Bummer.  So these installers just decide to re-register the DLLs "to 
>> be sure
>> that they're registered", and as a result probably break their own
>> functionality.
>>
>> Thanks for the response, Rob.
>>
>> Anthony Wieser
>> Wieser Software Ltd
>>
>> - Original Message -
>> From: "Rob Mensching" 
>> To: "General discussion for Windows Installer XML toolset."
>> 
>> Sent: Wednesday, February 18, 2009 4:51 AM
>> Subject: Re: [WiX-users] What keeps borking my ICE validation by 
>> registering
>> VBScript and JScript under HKCU?
>>
>>
>>  
>>> My understanding was that there are many bad guys.
>>>
>>> Anthony Wieser wrote:
>>>
 Heath Stewart reports the solution here, but I find this 
 frustrating that
 every now and then, I go to build and suddenly I can't, getting 
 light.exe
 errors.  As I don't build every day, I'm not sure what's registering
 these
 under HKCU, but something is.

 I don't remember installing anything but windows updates, and it looks
 like
 a Java update.
 Oh, and I did see an installshield update thing run too.

 Is anyone else seeing this occasionally?  Anyone figured out who 
 the bad
 guy
 is?

 http://blogs.msdn.com/heaths/archive/2007/05/31/windows-installer-errors-2738-and-2739-with-script-custom-actions.aspx
  

 Check that vbscript.dll and jscript.dll aren't registered in
 HKEY_CURRENT_USER (HKCU), checking for the registry keys below.

 VBScript, HKCU\SOFTWARE\Classes\CLSID\{
 B54F3741-5B07-11CF-A4B0-00AA004A55E8}
 JScript, HKCU\SOFTWARE\Classes\CLSID\{
 F414C260-6AC0-11CF-B6D1-00AA0058}



 Anthony Wieser
 Wieser Software Ltd


 --
  

 Open Source Business Conference (OSBC), March 24-25, 2009, San 
 Francisco,
 CA
 -OSBC tackles the biggest issue in open source: Open Sourcing the
 Enterprise
 -Strategies to boost innovation and cut costs with open source
 participation
 -Receive a $600 discount off the registration fee with the source 
 code:
 SFAD
 http://p.sf.net/sfu/XcvMzF8H
 ___
 WiX-users mailing list
 WiX-users@lists.sourceforge.net
 https://lists.sourceforge.net/lists/listinfo/wix-users

   
>>> --
>>>  
>>>
>>> Open Source Business Conference (OSBC), March 24-25, 2009, San 
>>> Francisco,
>>> CA
>>> -OSBC tackles the biggest issue in open source: Open Sourcing the
>>> Enterprise
>>> -Strategies to boost innovation and cut costs with open source
>>> participation
>>> -Receive a $600 discount off the registration fee with the source code:
>>> SFAD
>>> http://p.sf.net/sfu/XcvMzF8H
>>> ___
>>> WiX-users mailing list
>>> WiX-users@lists.sourceforge.net
>>> https://lists.sourceforge.net/lists/listinfo/wix-users
>>> 
>>
>>
>> --
>>  
>>
>> Open Source Business Conference (OSBC), March 24-25, 2009, 

Re: [WiX-users] any pointers on the syntax i should one use to enable deployment of a gac dll required dll.config file, e.g. gac dll's that make use if setting designer/api runtime settings?

2009-02-20 Thread Robert O'Brien
I tried adding the following custom action sequenced to happen after 
MsiPublishAssemblies and even though the verbose logs show it completing 
successfully the dll.config is not there after setup competes.   Any thoughts 
on why that is happening and how I get this required dll.config file placed in 
the gac folder along side its parent dll?




!Sdk1=2 And 
&Sdk1=3 And ?Sdk1Gac14=2 And $Sdk1Gac14=3
!Sdk1=2 And 
&Sdk1=3 And ?Sdk1Gac14=2 And $Sdk1Gac14=3

From: Robert O'Brien
Sent: Thursday, February 19, 2009 9:13 AM
To: 'wix-users@lists.sourceforge.net'
Subject: any pointers on the syntax i should one use to enable deployment of a 
gac dll required dll.config file, e.g. gac dll's that make use if setting 
designer/api runtime settings?

Any pointers on the syntax i should one use to enable deployment of a gac dll 
required dll.config file, e.g. gac dll's that make use if setting designer/api 
runtime settings?

I tried the following two options and the first, currently commented out, 
doesn't work because it doesn't drop the file in the actual gac folder, the 
second doesn't work because it seems the gac placement processing deletes it 
when the Assembly=".net" dll file setting is processed.


 
 















--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] creating wix extensions

2009-02-20 Thread Thomas S. Trias
Sean,

Creating the actual extensions to the compiler (candle), linker (light), 
decompiler (dark), serializer / gatherer (heat), etc. requires a .NET 
assembly; your choices there include managed C++ or a managed wrapper 
around a native DLL.

That said, most of the extensions are coupled with CustomActions written 
as C++ DLLs that get included in the Binary table in the MSI.  You can 
create the table within the CA using MsiDatabaseImport or by using the 
CREATE TABLE SQL syntax.  You can see the lifetime of the table by 
looking at the cached MSI file; I suspect that the changes are 
permanent, although care must be taken to make sure the CA only runs 
when necessary.

Alternatively, you can create the custom table and fill it a-priori 
using the CustomTable element and its Column and Row children.  That 
makes initial development of the CA easier to test before you decide to 
turn it into a full-blown extension.

If you mentioned what you hope to accomplish with the extension and / or 
CA, that would definitely influence people's recommendations.

Thanks,

Thomas S. Trias
Senior Developer
Artizan Internet Services
http://www.artizan.com/



 Original Message  
Subject: [WiX-users] creating wix extensions
From: Sean Farrow 
To: 
Date: 2/18/2009 2:46 PM
> Hi: 
> Can I create a wix extension in a language other than a .net based
> language (specifically c++)?
> Alternatively, if I create a table in a custom action (what is the api
> call to do this, and which library is it in?) how long does this table
> last?
> I'm trying to decide whether to create an extension, or whether to
> create a custom action. Any help apreciated.
>  Cheers
> Sean.
>  
>
>   


--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] Log file generation

2009-02-20 Thread Thomas S. Trias
AFAIK, MsiEnableLog is only useful if you have a bootstrapper that 
starts the installation; I'm guessing that this is useful when a 
bootsrapper uses ShellExecute to execute the MSI instead of starting an 
msiexec process with parameters.

Thanks,

Thomas S. Trias
Senior Developer
Artizan Internet Services
http://www.artizan.com/



 Original Message  
Subject: Re: [WiX-users] Log file generation
From: Hukumchand Shah 
To: wix-users 
Date: 2/19/2009 3:38 AM
> Hi All,
>
> Does anyone know how to use MsiEnableLog function in wix to enable msi
> logging.
>
> Regards,
> Hukum
>
> On Thu, Feb 19, 2009 at 10:25 AM, Hukumchand Shah wrote:
>
>   
>> Hi All,
>>
>> Can anyone tell me, how to generate log file for my installation process.
>> I want log file for whatever installer does during installation process.
>>
>> Thanks,
>> Hukum
>>
>> 
>
>   

--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] Launch Conditions

2009-02-20 Thread Thomas S. Trias
If you don't use a CDATA section, you can also escape & < and > into 
their corresponding XML character entities: &, < and >.  
That's just general XML, not just a WiXism.

Thanks,

Thomas S. Trias
Senior Developer
Artizan Internet Services
http://www.artizan.com/


 Original Message  
Subject: Re: [WiX-users] Launch Conditions
From: Colin Fox 
To: General discussion for Windows Installer XML toolset.   
 
Date: 2/19/2009 5:13 PM
> Thanks, Alex!
>
> I've long wondered about the CDATA thing.
>
> On Wed, Feb 18, 2009 at 11:18 AM, Alexander Shevchuk <
> alexander.shevc...@microsoft.com> wrote:
>
>   
>> Hi Colin,
>>
>> It is:
>>
>> 
>>  
>> 
>>
>> 
>>  XXX
>> 
>>
>> NOT:
>>
>> 
>>  
>> 
>>
>> 
>>  YYY
>> 
>>
>> Also, you want Property's Id to be in all uppercase.
>> The only time when you need CDATA in condition is when condition text
>> includes & > < ' " characters.
>>
>> Regards,
>> Alex
>>
>>
>>
>>
>> -Original Message-
>> From: Colin Fox [mailto:greenene...@gmail.com]
>> Sent: Wednesday, February 18, 2009 11:08 AM
>> To: wix-users
>> Subject: [WiX-users] Launch Conditions
>>
>> I'm trying to create a launch condition that makes sure SharePoint is
>> installed. I thought this was the way to do it:
>>
>>
>>>Root='HKLM'
>> Key='SOFTWARE\Microsoft\.NETFramework\AssemblyFolders\SharePoint' />
>>
>>
>>
>>  SharepointRegistry
>>
>>
>> But this always fails, even though the SharepointRegistry value does get
>> set
>> before the installation begins, because if SP is actually installed, the
>> body of the package gets put in the correct place.
>>
>> What am I doing wrong here?
>>
>> Also - why are CDATA sections sometimes used inside conditions, and
>> sometimes not? What's the difference?
>>
>> --
>> Regards,
>>  cf
>>
>> --
>> Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco,
>> CA
>> -OSBC tackles the biggest issue in open source: Open Sourcing the
>> Enterprise
>> -Strategies to boost innovation and cut costs with open source
>> participation
>> -Receive a $600 discount off the registration fee with the source code:
>> SFAD
>> http://p.sf.net/sfu/XcvMzF8H
>> ___
>> WiX-users mailing list
>> WiX-users@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/wix-users
>>
>>
>>
>> --
>> Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco,
>> CA
>> -OSBC tackles the biggest issue in open source: Open Sourcing the
>> Enterprise
>> -Strategies to boost innovation and cut costs with open source
>> participation
>> -Receive a $600 discount off the registration fee with the source code:
>> SFAD
>> http://p.sf.net/sfu/XcvMzF8H
>> ___
>> WiX-users mailing list
>> WiX-users@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/wix-users
>>
>> 
>
>
>
>   

--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] DTF - install, rollback and uninstall

2009-02-20 Thread Neil Sleightholm
I have examined the code some more and it follows the model Rob outline and 
uses component state to determine what to do.
 
Neil
 
Neil Sleightholm
X2 Systems Limited
n...@x2systems.com  
 



From: Richard [mailto:legal...@xmission.com]
Sent: Fri 20/02/2009 18:09
To: wix-users@lists.sourceforge.net
Subject: Re: [WiX-users] DTF - install, rollback and uninstall




In article ,
"Neil Sleightholm"   writes:

> I think you missed the point. I can see there are two different entry =
> points, one for install the other for uninstall but what I can't see is =
> the condition that says to run one on install and the other on =
> uninstall. (Using the SQL one was probably a bad example as that has an =
> override condition other don't.)

Yeah, the SQL one might just be a bad example here.  The SQL actions
are being gated by two different properties: SKIPUNINSTALLSQLDATA and
SKIPINSTALLSQLDATA.  Although I haven't examined the source to say for
sure, I'm willing to bet that there are type 51 CAs that set these
properties appropriately when these actions need to run.  So the "do
this on install", "do that on uninstall" logic is probably encoded in
the conditions on the CAs that set the properties SKIPUNINSTALLSQLDATA
and SKIPINSTALLSQLDATA.
--
"The Direct3D Graphics Pipeline" -- DirectX 9 draft available for download
  

Legalize Adulthood! 

--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] Passing data between deferred custom actions

2009-02-20 Thread Thomas S. Trias
Use a different delimiter; the WiX CA's use EUR.  I've been tempted to 
use XML (just because it makes reading the logs so much easier - 
probably overkill for anything short of serializing .NET objects)...

Thanks,

Thomas S. Trias
Senior Developer
Artizan Internet Services
http://www.artizan.com/



 Original Message  
Subject: Re: [WiX-users] Passing data between deferred custom actions
From: John Nannenga 
To: General discussion for Windows Installer XML toolset.   
 
Date: 2/20/2009 12:01 PM
> What happens when the data value you need contains what appears to be the 
> delimiter between independent properties within the CustomActionData class?  
> "semi-colon"...
>
>
>
>
>
> -Original Message-
> From: Rob Mensching [mailto:r...@wixtoolset.org] 
> Sent: Tuesday, February 17, 2009 10:52 PM
> To: General discussion for Windows Installer XML toolset.
> Subject: Re: [WiX-users] Passing data between deferred custom actions
>
> Most of the WiX toolset CustomActions do this.
>
> Eitan Behar wrote:
>   
>> Does not look like fun, but it's doable ! Thanks !
>>
>> Etian
>>
>>
>> On Tue, Feb 17, 2009 at 3:38 PM, Christopher Painter <
>> chr...@deploymentengineering.com> wrote:
>>
>>   
>> 
>>> You'll want to look at the CustomActionData class in DTF as described here:
>>>
>>> http://www.mail-archive.com/wix-users@lists.sourceforge.net/msg17875.html
>>>
>>> In a nutshell:
>>>
>>> In your immeadiate custom action, you instantiate the class, stuff it with
>>> data and then serialize it out to a property.
>>>
>>> In your deferred custom action you read the CustomActionData property and
>>> pass it to the class constructor for deserialziation back into your class
>>> with all of it's data.
>>>
>>> As far as how to schedule these custom actions there are several patterns:
>>>
>>> 1) 1 immeadiate to 1 deferred relationship
>>> 2) 1 immeadiate to multiple deferred relationship
>>> 3) 1 immeadiate that calls DoAction to schedule the deferred ( this is the
>>> way Jason describes in the above link. )
>>>
>>> When using #1 or #2, remember the immeadiate must be scheduled before the
>>> deferred and the name of the property(s) to be set is the name of the
>>> deferred custom actions(s).  This is how MSI makes the join.
>>>
>>> Christopher Painter, Author of Deployment Engineering Blog
>>> Have a hot tip, know a secret or read a really good thread that deserves
>>> attention? E-Mail Me
>>>
>>>
>>> --- On Tue, 2/17/09, Eitan Behar  wrote:
>>>
>>> 
>>>   
 From: Eitan Behar 
 Subject: Re: [WiX-users] Passing data between deferred custom actions
 To: chr...@deploymentengineering.com, "General discussion for Windows
   
 
>>> Installer XML toolset." 
>>> 
>>>   
 Date: Tuesday, February 17, 2009, 6:47 AM
 DTF C#



 On Tue, Feb 17, 2009 at 2:05 PM, Christopher Painter <
 chr...@deploymentengineering.com> wrote:

   
 
> What language is the CA's written in?
>
> Christopher Painter, Author of Deployment Engineering
> 
>   
 Blog
   
 
> Have a hot tip, know a secret or read a really good
> 
>   
 thread that deserves
   
 
> attention? E-Mail Me
>
>
> --- On Tue, 2/17/09, Eitan Behar
> 
>   
  wrote:
   
 
>> From: Eitan Behar 
>> Subject: [WiX-users] Passing data between
>>   
>> 
 deferred custom actions
   
 
>> To: "General discussion for Windows
>>   
>> 
 Installer XML toolset." <
   
 
> wix-users@lists.sourceforge.net>
> 
>   
>> Date: Tuesday, February 17, 2009, 2:40 AM
>> Hi,
>>
>> Is there a proper method to pass data between
>>   
>> 
 deferred
   
 
>> custom actions ? I
>> have a bunch of chained custom actions and need
>>   
>> 
 to pass
   
 
>> data between them,
>> actually, just a boolean value
>>   
>> 
 "telling" the rest
   
 
>> of the ca whether to
>> continue.
>>
>> Thanks,
>>
>> Eitan
>>
>>   
>> 
>>> --
>>> 
>>>   
>> Open Source Business Conference (OSBC), March
>>   
>> 
 24-25, 2009,
   
 
>> San Francisco, CA
>> -OSBC tackles the biggest issue in open source:
>>   
>> 
 Open
   
 
>> Sourcing the Enterprise
>> -Strategies to boost innovation and cut costs
>>   
>> 
 with open
  

Re: [WiX-users] DTF - install, rollback and uninstall

2009-02-20 Thread Bob Arnson
Rob Mensching wrote:
> WcaGetComponentToDo() is a nice wrapper that cleans up 
> much of the confusion.
>   

You're welcome.

Every custom action that modifies the machine is tied, directly or 
indirectly, to a component. The compiler extension and schema make the 
authoring be a child of Component or a grandchild of Component such as 
File, CreateFolder, etc. Then the custom table in the .msi includes that 
component so the custom action can query for it and then use 
WcaGetComponentTodo (etc) to see if the component is active and if so, 
what's happening to it:

enum WCA_TODO
{
WCA_TODO_UNKNOWN,
WCA_TODO_INSTALL,
WCA_TODO_UNINSTALL,
WCA_TODO_REINSTALL,
};

I'm biased, but I'd suggest looking at ca\wixca\dll\netshortcuts.cpp; 
it's a lot simpler than IIS but has the same kinds of things in it.

-- 
sig://boB
http://joyofsetup.com/



--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] Dependency of third-part applications

2009-02-20 Thread Bob Arnson
Volnei dos Santos wrote:
> You are correct, Bob; I've right the wrong code here. But unfortunately it's
> not the main problem. Man, I've tried millions of variants of this code,
> including your suggestion. That's why I think the way I'm doing the thing
> may be wrong...
>   

Then start with a verbose log around the FindRelatedProducts action; it 
will tell you if the product was found.

-- 
sig://boB
http://joyofsetup.com/



--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] DTF - install, rollback and uninstall

2009-02-20 Thread Neil Sleightholm
I think I understand the component state approach but I am not sure this is 
possible with the current implementation of custom tables as I can't see how 
they can be associated with a component.
 
Neil
 
Neil Sleightholm
X2 Systems Limited
n...@x2systems.com  
 



From: Rob Mensching [mailto:r...@wixtoolset.org]
Sent: Fri 20/02/2009 09:58
To: General discussion for Windows Installer XML toolset.
Subject: Re: [WiX-users] DTF - install, rollback and uninstall



There is a helper function in wcautil that is usually a tell tale sign
you've found the code ::WcaGetComponentToDo().  The old school way (most
of serverca uses the old school) is to call
WcaIsInstalling()/WcaIsReInstalling()/WcaIsUninstalling() to determine
the scheduling.  WcaGetComponentToDo() is a nice wrapper that cleans up
much of the confusion.

Using conditions to control your CustomAction install/uninstall
behaviors is primitive and usually insufficient... but the most
visible.  Data driven CustomActions that modify machine state via
Resources should really use Component states.  That matches the design
of the Windows Installer.

Neil Sleightholm wrote:
> I don't suppose you could point me in the direction of the code that controls 
> that for one for the WiX CA's so I can learn how to do it.
>
> Thanks
>
> Neil
>
> Neil Sleightholm
> X2 Systems Limited
> n...@x2systems.com 
>
>
> 
>
> From: Bob Arnson [mailto:b...@joyofsetup.com]
> Sent: Fri 20/02/2009 01:15
> To: General discussion for Windows Installer XML toolset.
> Subject: Re: [WiX-users] DTF - install, rollback and uninstall
>
>
>
> Neil Sleightholm wrote:
>  
>> Where is the detection or conditional calls in that? In most cases this
>> seems to end up calling the same code but with a true/false code
>> indicating install/uninstall.
>>
>>
>
> Some of them need to have very different -- or differently-timed --
> behavior during install -v- uninstall but both still do their things
> based on the component-level action state.
>
> --
> sig://boB
> http://joyofsetup.com/
>
>
>
> --
> Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
> -OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
> -Strategies to boost innovation and cut costs with open source participation
> -Receive a $600 discount off the registration fee with the source code: SFAD
> http://p.sf.net/sfu/XcvMzF8H
> ___
> WiX-users mailing list
> WiX-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/wix-users
>
>
>  

--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] Feature request: extending PermissionEx element with inheritance option

2009-02-20 Thread Thomas S. Trias
Yan,

Take a look at the mailing list posts from and related to Cody Cutrer's 
enhancements to PermissionEx.  I will also build a patch from my latest 
efforts and attach it to issue tracker item 2612975.

Thanks,

Thomas S. Trias
Senior Developer
Artizan Internet Services
http://www.artizan.com/



 Original Message  
Subject: Re: [WiX-users] Feature request: extending PermissionEx 
elementwith inheritance option
From: Yan Sklyarenko 
To: General discussion for Windows Installer XML toolset.   
 
Date: 2/18/2009 9:23 AM
> I failed to find the one you're talking about, thus created a new one:
> 2612975
> Thank you.
>
> -- Yan
>
> -Original Message-
> From: Rob Mensching [mailto:r...@wixtoolset.org] 
> Sent: Wednesday, February 18, 2009 6:53 AM
> To: General discussion for Windows Installer XML toolset.
> Subject: Re: [WiX-users] Feature request: extending PermissionEx element
> with inheritance option
>
> I think this feature request is already open. If not, it has been asked 
> before and someone forgot to open the request.
>
> Yan Sklyarenko wrote:
>   
>> Hello WiX developers,
>>
>> I'm going to file a feature request and would like to verify if it's
>> worth registering.
>>
>> The actual custom action, which PermissionEx element results in,
>> 
> called
>   
>> ExecSecureObjects considers SUB_CONTAINERS_AND_OBJECTS_INHERIT option
>> the best for folders and NO_INHERITANCE for everything else.
>> I think it would be nice to extend PermissionEx element with extra
>> attribute, Inherit, resulting in an extra column in SecureObjects
>> 
> table.
>   
>> Of course, this should make sense for CreateFolder and Registry
>> 
> entities
>   
>> only. And instead of hard coding the inheritance options, the
>> ExecSecureObjects action will read it from CustomActionData.
>>
>> The reason I consider it helpful is when applying permissions to
>> existent folder with lots of files and subfolders, this takes time.
>> Especially if there's no recursion required...
>>
>> Are there any pitfalls in this extension?
>> If not, what are the chances for it to be implemented soon? :-)
>>
>> (I know I always have a fallback option to implement it myself :-))
>>
>> Thank you.
>>
>> -- Yan
>>
>>
>>
>> 
> 
> --
>   
>> Open Source Business Conference (OSBC), March 24-25, 2009, San
>> 
> Francisco, CA
>   
>> -OSBC tackles the biggest issue in open source: Open Sourcing the
>> 
> Enterprise
>   
>> -Strategies to boost innovation and cut costs with open source
>> 
> participation
>   
>> -Receive a $600 discount off the registration fee with the source
>> 
> code: SFAD
>   
>> http://p.sf.net/sfu/XcvMzF8H
>> ___
>> WiX-users mailing list
>> WiX-users@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/wix-users
>>   
>> 
>
> 
> --
> Open Source Business Conference (OSBC), March 24-25, 2009, San
> Francisco, CA
> -OSBC tackles the biggest issue in open source: Open Sourcing the
> Enterprise
> -Strategies to boost innovation and cut costs with open source
> participation
> -Receive a $600 discount off the registration fee with the source code:
> SFAD
> http://p.sf.net/sfu/XcvMzF8H
> ___
> WiX-users mailing list
> WiX-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/wix-users
>
>
>   

--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] Trouble registering .NET assembly from GAC into COM+

2009-02-20 Thread Don Benson
It is interesting that you mention the Assembly Name from the MSI tables. When 
I first got the error, I was looking in the ComPlusAssembly table and noticed 
that the AssemblyName column was blank. I tried adding the AssemblyName 
attribute for my COM+ assembly, thinking that it would help the custom action 
with finding the file in the GAC, but that didn't have any effect.

The MsiAssemblyName table seems to have appropriate entries:
EnterpriseServicesHost_GAC  nameMyProduct.EnterpriseServicesHost
EnterpriseServicesHost_GAC  version 0.0.0.1
EnterpriseServicesHost_GAC  culture neutral
EnterpriseServicesHost_GAC  publicKeyToken  CF47A01D50A7B0F5
EnterpriseServicesHost_GAC  processorArchitecture   MSIL

When I monitored MSIEXEC using ProcMon, the only thing that seemed odd was an 
open file request on 
C:\WINNT\GAC\MyProduct.EnterpriceServicesHost\0.0.0.1_CF47A01D50A7B0F5\MyProduct.EnterpriseServicesHost.dll,
 or something like that. The Previous file activity involved the 
C:\WINNT\GAC_MSIL tree. That seemed not right to me, but I don't know anything 
about the Fusion API.

- Don Benson -

> -Original Message-
> From: Fredrik Grohn [mailto:fredrik.gr...@microsoft.com]
> Sent: Friday, February 20, 2009 2:47 PM
> To: General discussion for Windows Installer XML toolset.
> Subject: Re: [WiX-users] Trouble registering .NET assembly from GAC
> into COM+
>
> On top of that it was all written on Windows 2000 originally. It could
> have something to do with the assembly name that is being extracted
> from the MSI tables.
>
> In any case I would also recommend going with your option 1 below, for
> the sake of general robustness. As long as you can live with the file
> duplication.
>
> -Original Message-
> From: Rob Mensching [mailto:r...@wixtoolset.org]
> Sent: Friday, February 20, 2009 11:39 AM
> To: General discussion for Windows Installer XML toolset.
> Subject: Re: [WiX-users] Trouble registering .NET assembly from GAC
> into COM+
>
> Note: Fredrik wrote the COM+ installation code. His answers are far
> more
> authoritative than mine.
>
> Don Benson wrote:
> > I never had this functionality previously working. I am a new user to
> WiX (just since the beginning of the month), going through the process
> of converting Wise for Windows Installer projects (yes, it's an ancient
> tool!) to WiX.
> >
> > Based on what Rob is saying, it does certainly seem to a Fusion
> issue, at least with .NET 2.0 on Windows 2000. I haven't tested on 2003
> or 2008 servers yet, but that won't really matter because I have to
> support Windows 2000 for at least a year or more. If I could use COM+
> 1.5, I wouldn't be using the GAC at all. I would prefer use private
> assemblies in conjunction with the application directory attribute of
> the COM+ application.
> >
> >
> >> -Original Message-
> >> From: Fredrik Grohn [mailto:fredrik.gr...@microsoft.com]
> >> Sent: Friday, February 20, 2009 2:23 PM
> >> To: General discussion for Windows Installer XML toolset.
> >> Subject: Re: [WiX-users] Trouble registering .NET assembly from GAC
> >> into COM+
> >>
> >> This is actually supposed to work. Though neither Fusion or COM+
> where
> >> designed with deployment in mind, so plenty of unexpected things
> seems
> >> to happen here.
> >>
> >> This probably has something to do with Fusion, but I am at a loss to
> >> tell what.
> >>
> >> Are you saying that you have had it working with a previous WiX
> build
> >> BTW?
> >>
> >> -Original Message-
> >> From: Don Benson [mailto:dben...@trulinx.com]
> >> Sent: Friday, February 20, 2009 11:06 AM
> >> To: General discussion for Windows Installer XML toolset.
> >> Subject: Re: [WiX-users] Trouble registering .NET assembly from GAC
> >> into COM+
> >>
> >> That is what I did, and it was easy to do.
> >>
> >> So what is the purpose of the DLLPathFromGAC attribute on the
> >> ComPlusAssembly element? It doesn't seem like it has any use as of
> >> build 3.0.5006 unless you are using to register a DLL that already
> was
> >> previously installed, and I'm not sure what installation scenario
> would
> >> do that.
> >>
> >> Thanks for the informative and prompt responses!
> >>
> >>
> >>> -Original Message-
> >>> From: Rob Mensching [mailto:r...@wixtoolset.org]
> >>> Sent: Friday, February 20, 2009 1:52 PM
> >>> To: General discussion for Windows Installer XML toolset.
> >>> Subject: Re: [WiX-users] Trouble registering .NET assembly from GAC
> >>> into COM+
> >>>
> >>> Option 1 may be the best.  All of that "install/upgrade/uninstall
> >>> stuff"
> >>> you listed on that line is good stuff and difficult to do well.
> >>>
> >>>
>  Option 1:
>  Include the .NET DLL in the GAC and in a folder, which requires
> 
> >>> separate components for the file. I've seen threads about deploying
> >>> .Net assemblies to both places. The ComPlus configuration can
> >>>
> >> reference
> >>
> >>> the DLL component that installs to a folder. If there is an 

Re: [WiX-users] Trouble registering .NET assembly from GAC into COM+

2009-02-20 Thread Fredrik Grohn
On top of that it was all written on Windows 2000 originally. It could have 
something to do with the assembly name that is being extracted from the MSI 
tables.

In any case I would also recommend going with your option 1 below, for the sake 
of general robustness. As long as you can live with the file duplication.

-Original Message-
From: Rob Mensching [mailto:r...@wixtoolset.org]
Sent: Friday, February 20, 2009 11:39 AM
To: General discussion for Windows Installer XML toolset.
Subject: Re: [WiX-users] Trouble registering .NET assembly from GAC into COM+

Note: Fredrik wrote the COM+ installation code. His answers are far more
authoritative than mine.

Don Benson wrote:
> I never had this functionality previously working. I am a new user to WiX 
> (just since the beginning of the month), going through the process of 
> converting Wise for Windows Installer projects (yes, it's an ancient tool!) 
> to WiX.
>
> Based on what Rob is saying, it does certainly seem to a Fusion issue, at 
> least with .NET 2.0 on Windows 2000. I haven't tested on 2003 or 2008 servers 
> yet, but that won't really matter because I have to support Windows 2000 for 
> at least a year or more. If I could use COM+ 1.5, I wouldn't be using the GAC 
> at all. I would prefer use private assemblies in conjunction with the 
> application directory attribute of the COM+ application.
>
>
>> -Original Message-
>> From: Fredrik Grohn [mailto:fredrik.gr...@microsoft.com]
>> Sent: Friday, February 20, 2009 2:23 PM
>> To: General discussion for Windows Installer XML toolset.
>> Subject: Re: [WiX-users] Trouble registering .NET assembly from GAC
>> into COM+
>>
>> This is actually supposed to work. Though neither Fusion or COM+ where
>> designed with deployment in mind, so plenty of unexpected things seems
>> to happen here.
>>
>> This probably has something to do with Fusion, but I am at a loss to
>> tell what.
>>
>> Are you saying that you have had it working with a previous WiX build
>> BTW?
>>
>> -Original Message-
>> From: Don Benson [mailto:dben...@trulinx.com]
>> Sent: Friday, February 20, 2009 11:06 AM
>> To: General discussion for Windows Installer XML toolset.
>> Subject: Re: [WiX-users] Trouble registering .NET assembly from GAC
>> into COM+
>>
>> That is what I did, and it was easy to do.
>>
>> So what is the purpose of the DLLPathFromGAC attribute on the
>> ComPlusAssembly element? It doesn't seem like it has any use as of
>> build 3.0.5006 unless you are using to register a DLL that already was
>> previously installed, and I'm not sure what installation scenario would
>> do that.
>>
>> Thanks for the informative and prompt responses!
>>
>>
>>> -Original Message-
>>> From: Rob Mensching [mailto:r...@wixtoolset.org]
>>> Sent: Friday, February 20, 2009 1:52 PM
>>> To: General discussion for Windows Installer XML toolset.
>>> Subject: Re: [WiX-users] Trouble registering .NET assembly from GAC
>>> into COM+
>>>
>>> Option 1 may be the best.  All of that "install/upgrade/uninstall
>>> stuff"
>>> you listed on that line is good stuff and difficult to do well.
>>>
>>>
 Option 1:
 Include the .NET DLL in the GAC and in a folder, which requires

>>> separate components for the file. I've seen threads about deploying
>>> .Net assemblies to both places. The ComPlus configuration can
>>>
>> reference
>>
>>> the DLL component that installs to a folder. If there is an error
>>> during the COM+ registration, the entire installation will be rolled
>>> back. Upgrades and removals are handles automatically through the
>>> built-in functionality.
>>>
>> CONFIDENTIALITY NOTICE: This email and any files transmitted with it
>> are the property of Tribute Inc. and/or its affiliates. The contents of
>> this communication are confidential and may contain information that is
>> privileged and/or exempt from disclosure under applicable law. It is
>> intended solely for use of the individual or entity to whom this email
>> is addressed. If you are not one of the named recipient(s) or otherwise
>> have reason to believe that you have received this message in error,
>> please notify the sender and immediately delete this message and any
>> attachments. Any unauthorized use, retention, dissemination,
>> forwarding, printing, or copying of this email is strictly prohibited.
>>
>> ---
>> ---
>> Open Source Business Conference (OSBC), March 24-25, 2009, San
>> Francisco, CA
>> -OSBC tackles the biggest issue in open source: Open Sourcing the
>> Enterprise
>> -Strategies to boost innovation and cut costs with open source
>> participation
>> -Receive a $600 discount off the registration fee with the source code:
>> SFAD
>> http://p.sf.net/sfu/XcvMzF8H
>> ___
>> WiX-users mailing list
>> WiX-users@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/wix-users
>>
>>
>> --

Re: [WiX-users] Trouble registering .NET assembly from GAC into COM+

2009-02-20 Thread Rob Mensching
Note: Fredrik wrote the COM+ installation code. His answers are far more 
authoritative than mine.

Don Benson wrote:
> I never had this functionality previously working. I am a new user to WiX 
> (just since the beginning of the month), going through the process of 
> converting Wise for Windows Installer projects (yes, it's an ancient tool!) 
> to WiX.
>
> Based on what Rob is saying, it does certainly seem to a Fusion issue, at 
> least with .NET 2.0 on Windows 2000. I haven't tested on 2003 or 2008 servers 
> yet, but that won't really matter because I have to support Windows 2000 for 
> at least a year or more. If I could use COM+ 1.5, I wouldn't be using the GAC 
> at all. I would prefer use private assemblies in conjunction with the 
> application directory attribute of the COM+ application.
>
>   
>> -Original Message-
>> From: Fredrik Grohn [mailto:fredrik.gr...@microsoft.com]
>> Sent: Friday, February 20, 2009 2:23 PM
>> To: General discussion for Windows Installer XML toolset.
>> Subject: Re: [WiX-users] Trouble registering .NET assembly from GAC
>> into COM+
>>
>> This is actually supposed to work. Though neither Fusion or COM+ where
>> designed with deployment in mind, so plenty of unexpected things seems
>> to happen here.
>>
>> This probably has something to do with Fusion, but I am at a loss to
>> tell what.
>>
>> Are you saying that you have had it working with a previous WiX build
>> BTW?
>>
>> -Original Message-
>> From: Don Benson [mailto:dben...@trulinx.com]
>> Sent: Friday, February 20, 2009 11:06 AM
>> To: General discussion for Windows Installer XML toolset.
>> Subject: Re: [WiX-users] Trouble registering .NET assembly from GAC
>> into COM+
>>
>> That is what I did, and it was easy to do.
>>
>> So what is the purpose of the DLLPathFromGAC attribute on the
>> ComPlusAssembly element? It doesn't seem like it has any use as of
>> build 3.0.5006 unless you are using to register a DLL that already was
>> previously installed, and I'm not sure what installation scenario would
>> do that.
>>
>> Thanks for the informative and prompt responses!
>>
>> 
>>> -Original Message-
>>> From: Rob Mensching [mailto:r...@wixtoolset.org]
>>> Sent: Friday, February 20, 2009 1:52 PM
>>> To: General discussion for Windows Installer XML toolset.
>>> Subject: Re: [WiX-users] Trouble registering .NET assembly from GAC
>>> into COM+
>>>
>>> Option 1 may be the best.  All of that "install/upgrade/uninstall
>>> stuff"
>>> you listed on that line is good stuff and difficult to do well.
>>>
>>>   
 Option 1:
 Include the .NET DLL in the GAC and in a folder, which requires
 
>>> separate components for the file. I've seen threads about deploying
>>> .Net assemblies to both places. The ComPlus configuration can
>>>   
>> reference
>> 
>>> the DLL component that installs to a folder. If there is an error
>>> during the COM+ registration, the entire installation will be rolled
>>> back. Upgrades and removals are handles automatically through the
>>> built-in functionality.
>>>   
>> CONFIDENTIALITY NOTICE: This email and any files transmitted with it
>> are the property of Tribute Inc. and/or its affiliates. The contents of
>> this communication are confidential and may contain information that is
>> privileged and/or exempt from disclosure under applicable law. It is
>> intended solely for use of the individual or entity to whom this email
>> is addressed. If you are not one of the named recipient(s) or otherwise
>> have reason to believe that you have received this message in error,
>> please notify the sender and immediately delete this message and any
>> attachments. Any unauthorized use, retention, dissemination,
>> forwarding, printing, or copying of this email is strictly prohibited.
>>
>> ---
>> ---
>> Open Source Business Conference (OSBC), March 24-25, 2009, San
>> Francisco, CA
>> -OSBC tackles the biggest issue in open source: Open Sourcing the
>> Enterprise
>> -Strategies to boost innovation and cut costs with open source
>> participation
>> -Receive a $600 discount off the registration fee with the source code:
>> SFAD
>> http://p.sf.net/sfu/XcvMzF8H
>> ___
>> WiX-users mailing list
>> WiX-users@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/wix-users
>>
>>
>> ---
>> ---
>> Open Source Business Conference (OSBC), March 24-25, 2009, San
>> Francisco, CA
>> -OSBC tackles the biggest issue in open source: Open Sourcing the
>> Enterprise
>> -Strategies to boost innovation and cut costs with open source
>> participation
>> -Receive a $600 discount off the registration fee with the source code:
>> SFAD
>> http://p.sf.net/sfu/XcvMzF8H
>> ___
>> WiX-users mailing list
>> WiX-users@lists.sourceforge.

Re: [WiX-users] Trouble registering .NET assembly from GAC into COM+

2009-02-20 Thread Don Benson
I never had this functionality previously working. I am a new user to WiX (just 
since the beginning of the month), going through the process of converting Wise 
for Windows Installer projects (yes, it's an ancient tool!) to WiX.

Based on what Rob is saying, it does certainly seem to a Fusion issue, at least 
with .NET 2.0 on Windows 2000. I haven't tested on 2003 or 2008 servers yet, 
but that won't really matter because I have to support Windows 2000 for at 
least a year or more. If I could use COM+ 1.5, I wouldn't be using the GAC at 
all. I would prefer use private assemblies in conjunction with the application 
directory attribute of the COM+ application.

> -Original Message-
> From: Fredrik Grohn [mailto:fredrik.gr...@microsoft.com]
> Sent: Friday, February 20, 2009 2:23 PM
> To: General discussion for Windows Installer XML toolset.
> Subject: Re: [WiX-users] Trouble registering .NET assembly from GAC
> into COM+
>
> This is actually supposed to work. Though neither Fusion or COM+ where
> designed with deployment in mind, so plenty of unexpected things seems
> to happen here.
>
> This probably has something to do with Fusion, but I am at a loss to
> tell what.
>
> Are you saying that you have had it working with a previous WiX build
> BTW?
>
> -Original Message-
> From: Don Benson [mailto:dben...@trulinx.com]
> Sent: Friday, February 20, 2009 11:06 AM
> To: General discussion for Windows Installer XML toolset.
> Subject: Re: [WiX-users] Trouble registering .NET assembly from GAC
> into COM+
>
> That is what I did, and it was easy to do.
>
> So what is the purpose of the DLLPathFromGAC attribute on the
> ComPlusAssembly element? It doesn't seem like it has any use as of
> build 3.0.5006 unless you are using to register a DLL that already was
> previously installed, and I'm not sure what installation scenario would
> do that.
>
> Thanks for the informative and prompt responses!
>
> > -Original Message-
> > From: Rob Mensching [mailto:r...@wixtoolset.org]
> > Sent: Friday, February 20, 2009 1:52 PM
> > To: General discussion for Windows Installer XML toolset.
> > Subject: Re: [WiX-users] Trouble registering .NET assembly from GAC
> > into COM+
> >
> > Option 1 may be the best.  All of that "install/upgrade/uninstall
> > stuff"
> > you listed on that line is good stuff and difficult to do well.
> >
> > > Option 1:
> > > Include the .NET DLL in the GAC and in a folder, which requires
> > separate components for the file. I've seen threads about deploying
> > .Net assemblies to both places. The ComPlus configuration can
> reference
> > the DLL component that installs to a folder. If there is an error
> > during the COM+ registration, the entire installation will be rolled
> > back. Upgrades and removals are handles automatically through the
> > built-in functionality.
>
> CONFIDENTIALITY NOTICE: This email and any files transmitted with it
> are the property of Tribute Inc. and/or its affiliates. The contents of
> this communication are confidential and may contain information that is
> privileged and/or exempt from disclosure under applicable law. It is
> intended solely for use of the individual or entity to whom this email
> is addressed. If you are not one of the named recipient(s) or otherwise
> have reason to believe that you have received this message in error,
> please notify the sender and immediately delete this message and any
> attachments. Any unauthorized use, retention, dissemination,
> forwarding, printing, or copying of this email is strictly prohibited.
>
> ---
> ---
> Open Source Business Conference (OSBC), March 24-25, 2009, San
> Francisco, CA
> -OSBC tackles the biggest issue in open source: Open Sourcing the
> Enterprise
> -Strategies to boost innovation and cut costs with open source
> participation
> -Receive a $600 discount off the registration fee with the source code:
> SFAD
> http://p.sf.net/sfu/XcvMzF8H
> ___
> WiX-users mailing list
> WiX-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/wix-users
>
>
> ---
> ---
> Open Source Business Conference (OSBC), March 24-25, 2009, San
> Francisco, CA
> -OSBC tackles the biggest issue in open source: Open Sourcing the
> Enterprise
> -Strategies to boost innovation and cut costs with open source
> participation
> -Receive a $600 discount off the registration fee with the source code:
> SFAD
> http://p.sf.net/sfu/XcvMzF8H
> ___
> WiX-users mailing list
> WiX-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/wix-users

CONFIDENTIALITY NOTICE: This email and any files transmitted with it are the 
property of Tribute Inc. and/or its affiliates. The contents of this 
communication are confidential and may contain information that is privi

Re: [WiX-users] Trouble registering .NET assembly from GAC into COM+

2009-02-20 Thread Fredrik Grohn
This is actually supposed to work. Though neither Fusion or COM+ where designed 
with deployment in mind, so plenty of unexpected things seems to happen here.

This probably has something to do with Fusion, but I am at a loss to tell what.

Are you saying that you have had it working with a previous WiX build BTW?

-Original Message-
From: Don Benson [mailto:dben...@trulinx.com]
Sent: Friday, February 20, 2009 11:06 AM
To: General discussion for Windows Installer XML toolset.
Subject: Re: [WiX-users] Trouble registering .NET assembly from GAC into COM+

That is what I did, and it was easy to do.

So what is the purpose of the DLLPathFromGAC attribute on the ComPlusAssembly 
element? It doesn't seem like it has any use as of build 3.0.5006 unless you 
are using to register a DLL that already was previously installed, and I'm not 
sure what installation scenario would do that.

Thanks for the informative and prompt responses!

> -Original Message-
> From: Rob Mensching [mailto:r...@wixtoolset.org]
> Sent: Friday, February 20, 2009 1:52 PM
> To: General discussion for Windows Installer XML toolset.
> Subject: Re: [WiX-users] Trouble registering .NET assembly from GAC
> into COM+
>
> Option 1 may be the best.  All of that "install/upgrade/uninstall
> stuff"
> you listed on that line is good stuff and difficult to do well.
>
> > Option 1:
> > Include the .NET DLL in the GAC and in a folder, which requires
> separate components for the file. I've seen threads about deploying
> .Net assemblies to both places. The ComPlus configuration can reference
> the DLL component that installs to a folder. If there is an error
> during the COM+ registration, the entire installation will be rolled
> back. Upgrades and removals are handles automatically through the
> built-in functionality.

CONFIDENTIALITY NOTICE: This email and any files transmitted with it are the 
property of Tribute Inc. and/or its affiliates. The contents of this 
communication are confidential and may contain information that is privileged 
and/or exempt from disclosure under applicable law. It is intended solely for 
use of the individual or entity to whom this email is addressed. If you are not 
one of the named recipient(s) or otherwise have reason to believe that you have 
received this message in error, please notify the sender and immediately delete 
this message and any attachments. Any unauthorized use, retention, 
dissemination, forwarding, printing, or copying of this email is strictly 
prohibited.

--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] Files in an MSI

2009-02-20 Thread Don Benson
If you only need to do this manually one time, the Dark utility with the /x 
option will decompile an MSI and extract all of the binary components, 
including any embedded CAB files. You can then use a standard "archive" tool to 
extract files from the CABs.

> -Original Message-
> From: MacDiarmid, James D [mailto:james.macdiar...@eds.com]
> Sent: Friday, February 20, 2009 2:01 PM
> To: General discussion for Windows Installer XML toolset.
> Subject: Re: [WiX-users] Files in an MSI
>
>
> Actual I was thinking more along the lines of taking the files out of
> one msi and putting them into my main package since I can't seem to
> call
> an msi from inside my main one.
>
> -Original Message-
> From: Jim Williams [mailto:jimwilliam...@comcast.net]
> Sent: Friday, February 20, 2009 12:50 PM
> To: 'General discussion for Windows Installer XML toolset.'
> Subject: Re: [WiX-users] Files in an MSI
>
> You could try an administrative install:
>
>   msiexec /a xxx.msi
>
> Jim Williams
>
> -Original Message-
> From: MacDiarmid, James D [mailto:james.macdiar...@eds.com]
> Sent: Friday, February 20, 2009 9:05 AM
> To: General discussion for Windows Installer XML toolset.
> Subject: [WiX-users] Files in an MSI
>
>
> Is there any way to extract the files to be installed from an MSI
> package?
>
> Thanks,
> Jim
> ---
> -
> --
> Open Source Business Conference (OSBC), March 24-25, 2009, San
> Francisco, CA
> -OSBC tackles the biggest issue in open source: Open Sourcing the
> Enterprise
> -Strategies to boost innovation and cut costs with open source
> participation
> -Receive a $600 discount off the registration fee with the source code:
> SFAD
> http://p.sf.net/sfu/XcvMzF8H
> ___
> WiX-users mailing list
> WiX-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/wix-users
>
>
> ---
> -
> --
> Open Source Business Conference (OSBC), March 24-25, 2009, San
> Francisco, CA
> -OSBC tackles the biggest issue in open source: Open Sourcing the
> Enterprise
> -Strategies to boost innovation and cut costs with open source
> participation
> -Receive a $600 discount off the registration fee with the source code:
> SFAD
> http://p.sf.net/sfu/XcvMzF8H
> ___
> WiX-users mailing list
> WiX-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/wix-users
>
> ---
> ---
> Open Source Business Conference (OSBC), March 24-25, 2009, San
> Francisco, CA
> -OSBC tackles the biggest issue in open source: Open Sourcing the
> Enterprise
> -Strategies to boost innovation and cut costs with open source
> participation
> -Receive a $600 discount off the registration fee with the source code:
> SFAD
> http://p.sf.net/sfu/XcvMzF8H
> ___
> WiX-users mailing list
> WiX-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/wix-users

CONFIDENTIALITY NOTICE: This email and any files transmitted with it are the 
property of Tribute Inc. and/or its affiliates. The contents of this 
communication are confidential and may contain information that is privileged 
and/or exempt from disclosure under applicable law. It is intended solely for 
use of the individual or entity to whom this email is addressed. If you are not 
one of the named recipient(s) or otherwise have reason to believe that you have 
received this message in error, please notify the sender and immediately delete 
this message and any attachments. Any unauthorized use, retention, 
dissemination, forwarding, printing, or copying of this email is strictly 
prohibited.

--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] DTF Embedded UI Problem

2009-02-20 Thread John Nannenga
If memory serves me correctly (from last August), the issue here lies in the 
MakeSfxCA processing.  It only writes the Embedded UI entry points if there are 
no CAs included in the project.







-Original Message-
From: Christopher Painter [mailto:chr...@deploymentengineering.com] 
Sent: Thursday, February 19, 2009 6:03 AM
To: General discussion for Windows Installer XML toolset.; Oliver Wickham
Subject: Re: [WiX-users] DTF Embedded UI Problem

I think you are right,  when I moved it over to a C# CA project and built it I 
didn't see my exported functions until I removed the CustomActions.cs and 
rebuilt.  This makes since since a dll with custom actions would most likely be 
targeted for being installed or put in the binary table and a dll with a ui 
handler would be targeted for the MsiEmbeddedUI table.

Still, the compiler doesn't really tell you this is happening so I'll look at 
it further and maybe file a bug.

Personally I don't think it's so horrible to put your classes into another 
project.  This way my entry point assembly only exports my entry points and all 
my logic is in seperate reusable classes.  Fortunatly votive makes it really 
easy to add a reference to those assemblies and get them packaged up and 
available at runtime.


Christopher Painter, Author of Deployment Engineering Blog
Have a hot tip, know a secret or read a really good thread that deserves 
attention? E-Mail Me


--- On Thu, 2/19/09, Oliver Wickham  wrote:

> From: Oliver Wickham 
> Subject: RE: [WiX-users] DTF Embedded UI Problem
> To: chr...@deploymentengineering.com, "General discussion for Windows 
> Installer XML toolset." 
> Date: Thursday, February 19, 2009, 3:24 AM
> Hi Christopher,
> 
> I am glad you got the EmbeddedUI working. Thanks for coming
> back to me
> with advice on the issues I am experiencing with references
> to other
> DLLs. I did see the post build step in the WPF sample, and
> the embedded
> ui was working with that. I then moved the UI into our
> existing custom
> action project created through votive. The UI stopped
> working at that
> point. I had a look at the binary exports with dumpin, and
> the ui entry
> points were there, but for some reason it didn't work.
> The log during
> the install was fairly useless, stating just:
> 
> EEUI - Disabling MsiEmbeddedUI due to existing external or
> embedded UI
> 
> And then proceeding to run the non ui parts of the
> installation. I
> reasoned that it might be the existing references for that
> project, as
> that was the main difference. To test this theory I moved
> the UI in
> another project created through votive. It worked. Now I
> have the custom
> actions in one dll and the ui in another, which is not
> ideal, but works.
> I haven't had a chance to study the source to
> MakeSfxCA, but I imagine
> there might be some clues in there. Maybe a dislike for
> both custom
> actions and ui in the same dll? I don't know. Answers
> on a postcard
> 
> Olly
> 
> 
> -Original Message-
> From: Christopher Painter
> [mailto:chr...@deploymentengineering.com] 
> Sent: 19 February 2009 01:28
> To: General discussion for Windows Installer XML toolset.;
> Oliver
> Wickham
> Subject: RE: [WiX-users] DTF Embedded UI Problem
> 
> You are right, changing the ID to have .dll fixed the
> problem.  The
> problem of course is the MSI SDK topic on the MsiEmbeddedUI
> table
> doesn't mention this a problem and r
> Candle/Light/Validation don't catch
> it.
> 
> Either way I think it's a bug in WiX because if I edit
> just that table
> in WiX it doesn't solve the problem.  Only fixing the
> wxs does.
> 
> As for the problem you were having, I actually can answer
> that one!  :-)
> 
> If you look at the C# custom action project templates in
> Votive you'll
> see they implement an msbuild task to package your
> *.CA.dll.   This task
> is smart enough to auto package all non-GAC'd
> assemblies and project
> content. 
> 
> If you look at the WPF sample you'll see that it just
> has a simple
> postbuild call to MakeSfxCA and it's lacking the
> arguments to package
> all your other stuff up into the resultant DLL.
> 
> The samples project also has a dependency on the WiX
> targets which is a
> very bad idea in my opinion.  I just want to build the
> sample not WiX.
> So do what I did:  Create a C# custom action project, strip
> it of it's
> classes and transport the classes from the WPF project into
> the newly
> created project.The result is the best of both worlds.
> :-)
> 
> 
> Christopher Painter, Author of Deployment Engineering Blog
> Have a hot tip, know a secret or read a really good thread
> that deserves
> attention? E-Mail Me
> 
> 
> --- On Wed, 2/18/09, Oliver Wickham
>  wrote:
> 
> > From: Oliver Wickham
> 
> > Subject: RE: [WiX-users] DTF Embedded UI Problem
> > To: chr...@deploymentengineering.com, "General
> discussion for Windows
> Installer XML toolset."
> 
> > Date: Wednesday, February 18, 2009, 7:51 AM
> > Hi,
> > 
> > When looking into 

Re: [WiX-users] Files in an MSI

2009-02-20 Thread Jim Williams
Well, if both installers are written in WiX, just move the WiX  source
into the main WiX installer. :-)  However, if the one msi isn't written in WiX
you could do an administrative install, then create the WiX  source
for the files using heat.exe, and add then add that WiX source to the main
installer.

Jim Williams

-Original Message-
From: MacDiarmid, James D [mailto:james.macdiar...@eds.com] 
Sent: Friday, February 20, 2009 11:01 AM
To: General discussion for Windows Installer XML toolset.
Subject: Re: [WiX-users] Files in an MSI


Actual I was thinking more along the lines of taking the files out of
one msi and putting them into my main package since I can't seem to call
an msi from inside my main one. 

-Original Message-
From: Jim Williams [mailto:jimwilliam...@comcast.net] 
Sent: Friday, February 20, 2009 12:50 PM
To: 'General discussion for Windows Installer XML toolset.'
Subject: Re: [WiX-users] Files in an MSI

You could try an administrative install:

msiexec /a xxx.msi

Jim Williams

-Original Message-
From: MacDiarmid, James D [mailto:james.macdiar...@eds.com]
Sent: Friday, February 20, 2009 9:05 AM
To: General discussion for Windows Installer XML toolset.
Subject: [WiX-users] Files in an MSI


Is there any way to extract the files to be installed from an MSI
package? 

Thanks,
Jim

--
Open Source Business Conference (OSBC), March 24-25, 2009, San
Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the
Enterprise
-Strategies to boost innovation and cut costs with open source
participation
-Receive a $600 discount off the registration fee with the source code:
SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users



--
Open Source Business Conference (OSBC), March 24-25, 2009, San
Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the
Enterprise
-Strategies to boost innovation and cut costs with open source
participation
-Receive a $600 discount off the registration fee with the source code:
SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] Trouble registering .NET assembly from GAC into COM+

2009-02-20 Thread Don Benson
That is what I did, and it was easy to do.

So what is the purpose of the DLLPathFromGAC attribute on the ComPlusAssembly 
element? It doesn't seem like it has any use as of build 3.0.5006 unless you 
are using to register a DLL that already was previously installed, and I'm not 
sure what installation scenario would do that.

Thanks for the informative and prompt responses!

> -Original Message-
> From: Rob Mensching [mailto:r...@wixtoolset.org]
> Sent: Friday, February 20, 2009 1:52 PM
> To: General discussion for Windows Installer XML toolset.
> Subject: Re: [WiX-users] Trouble registering .NET assembly from GAC
> into COM+
>
> Option 1 may be the best.  All of that "install/upgrade/uninstall
> stuff"
> you listed on that line is good stuff and difficult to do well.
>
> > Option 1:
> > Include the .NET DLL in the GAC and in a folder, which requires
> separate components for the file. I've seen threads about deploying
> .Net assemblies to both places. The ComPlus configuration can reference
> the DLL component that installs to a folder. If there is an error
> during the COM+ registration, the entire installation will be rolled
> back. Upgrades and removals are handles automatically through the
> built-in functionality.

CONFIDENTIALITY NOTICE: This email and any files transmitted with it are the 
property of Tribute Inc. and/or its affiliates. The contents of this 
communication are confidential and may contain information that is privileged 
and/or exempt from disclosure under applicable law. It is intended solely for 
use of the individual or entity to whom this email is addressed. If you are not 
one of the named recipient(s) or otherwise have reason to believe that you have 
received this message in error, please notify the sender and immediately delete 
this message and any attachments. Any unauthorized use, retention, 
dissemination, forwarding, printing, or copying of this email is strictly 
prohibited.

--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] question about upgrades and instance transforms

2009-02-20 Thread Amy Rosewater
John,

Thanks so much for this!  :)  That is much better news than what I was
hoping for.  I am going to try it today.

A

-Original Message-
From: John Nannenga [mailto:john.nanne...@microsoft.com] 
Sent: Friday, February 20, 2009 11:25 AM
To: General discussion for Windows Installer XML toolset.
Subject: Re: [WiX-users] question about upgrades and instance transforms

I leave the upgrade code the same for all instances.  I have a dialog
asking the user whether they'd like to upgrade an existing instance, or
install a new instance (only if an existing instance is detected).

If the user selects to upgrade an existing instance, I store the product
code of that instance in a property, PC_TO_UPGRADE.


I then have a CA which runs that sets the "MIGRATE" property and the
property specified in the `Upgrade`.`ActionProperty` for the record in
question appropriately and at the right time in the sequence as
appropriate for the installation.


(essentially, this strips off the additional semi-colon delimited list
of product codes for the other instances that the installation / upgrade
should not care about).  


Do this before WI custom actions which act upon the property, and life
is good.  :)



-Original Message-
From: Amy Rosewater [mailto:arosewa...@spectrumhr.com] 
Sent: Friday, February 20, 2009 9:47 AM
To: General discussion for Windows Installer XML toolset.
Subject: Re: [WiX-users] question about upgrades and instance transforms

Anyone have any thoughts on this?  In my mind I am thinking that I would
need to transform
the Upgrade Code for each instance and the values in the upgrade table
to match for
windows installer to properly identify the specific instance I wanted to
upgrade such that
in my newer installer "Instance1" upgrade code matches my older
installer upgrade code.  This
is just speculation, so if anyone has any experience supporting a major
upgrade for an
install with multiple embedded transforms, I would love to hear what you
did.

Thanks in advance,

Amy

-Original Message-
From: Amy Rosewater [mailto:arosewa...@spectrumhr.com] 
Sent: Thursday, February 19, 2009 10:18 AM
To: General discussion for Windows Installer XML toolset.
Subject: [WiX-users] question about upgrades and instance transforms

Hi All,

 

I am in the process of making the necessary changes to my installer to
make it support a major upgrade.

 

I have found several resources describing the creation of a major
upgrade, and I think I understand at least for the default instance of
my product, how to write the Wix required to make this work.  However,
in my application I have supported multiple side by side installations
through the use of embedded transforms created by the Wix nodes
 and .

 

Is there anything that I need to do differently in the creation of a
major upgrade installer so that it will work correctly with transformed
instances of my original install?

 

Thanks in advance,

 

Amy

 

Amy Rosewater

SPECTRUM Human Resource Systems Corporation

707 17th Street Suite 3800

Denver CO, 80202

303.592.3403

arosewa...@spectrumhr.com

 


--
Open Source Business Conference (OSBC), March 24-25, 2009, San
Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the
Enterprise
-Strategies to boost innovation and cut costs with open source
participation
-Receive a $600 discount off the registration fee with the source code:
SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


--
Open Source Business Conference (OSBC), March 24-25, 2009, San
Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the
Enterprise
-Strategies to boost innovation and cut costs with open source
participation
-Receive a $600 discount off the registration fee with the source code:
SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users



--
Open Source Business Conference (OSBC), March 24-25, 2009, San
Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the
Enterprise
-Strategies to boost innovation and cut costs with open source
participation
-Receive a $600 discount off the registration fee with the source code:
SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OS

Re: [WiX-users] Files in an MSI

2009-02-20 Thread MacDiarmid, James D

Actual I was thinking more along the lines of taking the files out of
one msi and putting them into my main package since I can't seem to call
an msi from inside my main one. 

-Original Message-
From: Jim Williams [mailto:jimwilliam...@comcast.net] 
Sent: Friday, February 20, 2009 12:50 PM
To: 'General discussion for Windows Installer XML toolset.'
Subject: Re: [WiX-users] Files in an MSI

You could try an administrative install:

msiexec /a xxx.msi

Jim Williams

-Original Message-
From: MacDiarmid, James D [mailto:james.macdiar...@eds.com]
Sent: Friday, February 20, 2009 9:05 AM
To: General discussion for Windows Installer XML toolset.
Subject: [WiX-users] Files in an MSI


Is there any way to extract the files to be installed from an MSI
package? 

Thanks,
Jim

--
Open Source Business Conference (OSBC), March 24-25, 2009, San
Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the
Enterprise
-Strategies to boost innovation and cut costs with open source
participation
-Receive a $600 discount off the registration fee with the source code:
SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users



--
Open Source Business Conference (OSBC), March 24-25, 2009, San
Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the
Enterprise
-Strategies to boost innovation and cut costs with open source
participation
-Receive a $600 discount off the registration fee with the source code:
SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] Conditions in fragments

2009-02-20 Thread Rob Mensching
Ick.  

Eitan Behar wrote:
> You can also have an empty component group and add reference to it from the
> product file. - this is what I do :^)
>
>
> -Original Message-
> From: Frederico Rico Apostolo [mailto:frederico.apost...@vantyx.com]
> Sent: Friday, February 20, 2009 4:49 PM
> To: General discussion for Windows Installer XML toolset.
> Subject: [WiX-users] Conditions in fragments
>
> I'm using v3 votive in vs2005 and I lost sometime trying to have a fragment
> with only launch conditions, I've realized that even with compile propriety
> in the solution that fragment was ignored, unless I had a propriety or a
> custom action in that fragment linked or sub linked to the , just a
> warning for those that try to be as modular as I , if I'm wrong correct me
> pls.
>
> __
>
> Esta mensagem e ficheiros anexos incluem materia privada, confidencial e
> legalmente protegida,
> exclusivamente destinada a quem nela conste como destinatario. Se recebeu
> esta mensagem por
> engano, agradecemos que informe de imediato o remetente e que elimine a
> mensagem e os
> ficheiros sem os utilizar, divulgar ou reproduzir.
>
> This message and attached files contain private, confidential and legally
> privileged information,
> exclusively intended for the named addressees. If you have received this
> message in error,
> please contact the sender immediately and delete the message and files
> without utilization,
> circulation or reproduction.
>
>
> 
> --
> Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
> -OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
> -Strategies to boost innovation and cut costs with open source participation
> -Receive a $600 discount off the registration fee with the source code: SFAD
> http://p.sf.net/sfu/XcvMzF8H
> ___
> WiX-users mailing list
> WiX-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/wix-users
>
>
> --
> Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
> -OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
> -Strategies to boost innovation and cut costs with open source participation
> -Receive a $600 discount off the registration fee with the source code: SFAD
> http://p.sf.net/sfu/XcvMzF8H
> ___
> WiX-users mailing list
> WiX-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/wix-users
>   

--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] Conditions in fragments

2009-02-20 Thread Rob Mensching
You're right.  Conditions are one thing that don't have a good way to 
reference.  Maybe put the Properties referenced by the Conditions in the 
same Fragment, then use a PropertyRef?

Frederico Rico Apostolo wrote:
> I'm using v3 votive in vs2005 and I lost sometime trying to have a fragment 
> with only launch conditions, I've realized that even with compile propriety 
> in the solution that fragment was ignored, unless I had a propriety or a 
> custom action in that fragment linked or sub linked to the , just a 
> warning for those that try to be as modular as I , if I'm wrong correct me 
> pls.
>
> __
>
> Esta mensagem e ficheiros anexos incluem materia privada, confidencial e 
> legalmente protegida,
> exclusivamente destinada a quem nela conste como destinatario. Se recebeu 
> esta mensagem por
> engano, agradecemos que informe de imediato o remetente e que elimine a 
> mensagem e os
> ficheiros sem os utilizar, divulgar ou reproduzir.
>
> This message and attached files contain private, confidential and legally 
> privileged information,
> exclusively intended for the named addressees. If you have received this 
> message in error,
> please contact the sender immediately and delete the message and files 
> without utilization,
> circulation or reproduction.
>
>
> --
> Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
> -OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
> -Strategies to boost innovation and cut costs with open source participation
> -Receive a $600 discount off the registration fee with the source code: SFAD
> http://p.sf.net/sfu/XcvMzF8H
> ___
> WiX-users mailing list
> WiX-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/wix-users
>   

--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] Trouble registering .NET assembly from GAC into COM+

2009-02-20 Thread Rob Mensching
Option 1 may be the best.  All of that "install/upgrade/uninstall stuff" 
you listed on that line is good stuff and difficult to do well.

I think Option 2 won't work because your CustomAction will not be 
elevated after InstallFinalize and thus will not be able to make the 
COM+ configuration then.  (thank you Fusion for a faulty GAC design, I 
don't care much for Fusion as you might guess).

Option 3 has the issues you list.

Option 4 would require that tool to elevate... multiple elevations annoy 
users... ideal to avoid it.

Personally, I'd probably go with Option 1.

Don Benson wrote:
>> Windows Installer does not commit files to the GAC until
>> InstallFinalize
>> (the end of the transaction).  This prevents GAC assemblies from being
>> used or even referenced really during the installation transaction.  I
>> think this design limitation is the root of your issue.
>> 
>
> So, now I know the problem. The next question is, what is a recommended 
> solution to the problem? Is there a best practice?
>
> I tried scheduling the ComPlusInstallExecute custom action after 
> InstallFinalize, but this generates an ICE77 validation error because the 
> action is an in-script action and must be between InstallInitialize and 
> InstallFinalize. Then I tried scheduling ComPlusInstallPrepare after 
> InstallFinalize. This compiled, but then errored off during the installation 
> with the same message about where it is allowed to be scheduled.
>
> How do I get the COM Plus registration to occur after the InstallFinalize?
>
> The documentation for the ComPlusAssembly element implies that setting the 
> RegisterInCommit attribute to "yes" should schedule the assembly to be 
> registered after the InstallFinalize action. I have that attribute set, but 
> the registration is definitely getting scheduled before InstallFinalize. Is 
> this a bug in the latest build of the ComPlus extension?
>
> As I see it, I have several options with current version...
>
> Option 1:
> Include the .NET DLL in the GAC and in a folder, which requires separate 
> components for the file. I've seen threads about deploying .Net assemblies to 
> both places. The ComPlus configuration can reference the DLL component that 
> installs to a folder. If there is an error during the COM+ registration, the 
> entire installation will be rolled back. Upgrades and removals are handles 
> automatically through the built-in functionality.
>
> Option 2:
> Do not reference the .NET assembly in a ComPlusAssembly element. Create my 
> own custom action to register the .NET assembly into the existing COM+ App. 
> The custom action will be scheduled after InstallFinalize. If this custom 
> action fails, the app will still be installed, but non-functional. I will 
> also have to also deal with upgrades and removals.
>
> Option 3:
> Package the COM+ application separately using the export option from the 
> COMAdminCatalog API. The package would have to be built into a bootstrapper 
> that installs the rest of our server-based utilities. This creates another 
> entry in Add/Remove programs just for the COM+ application.
>
> Option 4:
> Manage the COM+ application with all custom code. The server includes a 
> "heartbeat" service. We could add functionality to the heartbeat service to 
> validate that the COM+ configuration is correct and try to fix it. Upgrades 
> and removals are still a complication.
>
> Option 1 seems to be the simplest choice for now, and I do have some time 
> pressure to get the installation working soon. I would appreciate any other 
> ideas or thoughts on my options.
>
> Sincerely,
> - Don Benson -
>
> CONFIDENTIALITY NOTICE: This email and any files transmitted with it are the 
> property of Tribute Inc. and/or its affiliates. The contents of this 
> communication are confidential and may contain information that is privileged 
> and/or exempt from disclosure under applicable law. It is intended solely for 
> use of the individual or entity to whom this email is addressed. If you are 
> not one of the named recipient(s) or otherwise have reason to believe that 
> you have received this message in error, please notify the sender and 
> immediately delete this message and any attachments. Any unauthorized use, 
> retention, dissemination, forwarding, printing, or copying of this email is 
> strictly prohibited.
>
> --
> Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
> -OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
> -Strategies to boost innovation and cut costs with open source participation
> -Receive a $600 discount off the registration fee with the source code: SFAD
> http://p.sf.net/sfu/XcvMzF8H
> ___
> WiX-users mailing list
> WiX-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/wix-users
>   

---

Re: [WiX-users] DTF - install, rollback and uninstall

2009-02-20 Thread Rob Mensching
Those Properties are essentially "kill switches" for the CustomActions. 
I don't remember the scenarios off the top of my head but we added those 
and the SKIPCONFIGUREIIS based on some needs.  They are big red buttons 
that completely kill the CustomActions.  The Properties do not provide 
fine control.

The decisions to install/uninstall Resources (like WebSites or SQL 
Strings) is not controlled by those properties.

Richard wrote:
> In article ,
> "Neil Sleightholm"   writes:
>
>   
>> I think you missed the point. I can see there are two different entry =
>> points, one for install the other for uninstall but what I can't see is =
>> the condition that says to run one on install and the other on =
>> uninstall. (Using the SQL one was probably a bad example as that has an =
>> override condition other don't.)
>> 
>
> Yeah, the SQL one might just be a bad example here.  The SQL actions
> are being gated by two different properties: SKIPUNINSTALLSQLDATA and
> SKIPINSTALLSQLDATA.  Although I haven't examined the source to say for
> sure, I'm willing to bet that there are type 51 CAs that set these
> properties appropriately when these actions need to run.  So the "do
> this on install", "do that on uninstall" logic is probably encoded in
> the conditions on the CAs that set the properties SKIPUNINSTALLSQLDATA
> and SKIPINSTALLSQLDATA.
> --
> "The Direct3D Graphics Pipeline" -- DirectX 9 draft available for download
>   
>
> Legalize Adulthood! 
>
> --
> Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
> -OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
> -Strategies to boost innovation and cut costs with open source participation
> -Receive a $600 discount off the registration fee with the source code: SFAD
> http://p.sf.net/sfu/XcvMzF8H
> ___
> WiX-users mailing list
> WiX-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/wix-users
>   

--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] Files in an MSI

2009-02-20 Thread John Nannenga
That'll work great but be mindful of `Feature`.`Level` = 0.

>From the SDK, "An install level of 0 (zero) disables the item and prevents it 
>from being displayed. A feature with an installation level of 0 (zero) is not 
>installed during any installation, including administrative installations."

If you have this case, things get to be a bit more interesting


-Original Message-
From: Jim Williams [mailto:jimwilliam...@comcast.net] 
Sent: Friday, February 20, 2009 11:50 AM
To: 'General discussion for Windows Installer XML toolset.'
Subject: Re: [WiX-users] Files in an MSI

You could try an administrative install:

msiexec /a xxx.msi

Jim Williams

-Original Message-
From: MacDiarmid, James D [mailto:james.macdiar...@eds.com] 
Sent: Friday, February 20, 2009 9:05 AM
To: General discussion for Windows Installer XML toolset.
Subject: [WiX-users] Files in an MSI


Is there any way to extract the files to be installed from an MSI
package? 

Thanks,
Jim
--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] DTF - install, rollback and uninstall

2009-02-20 Thread Rob Mensching
That's exactly it. This also happens to be the exact same way the 
Windows Installer operates on all of its tables that install Resources. 
That's why this model works well. IIRC, all of the WiX CustomActions 
that install Resources work this way as well.

I learned this from the MSI SDK a long time ago (back in 2000). I assume 
the documentation hasn't changed much so it should still be there.

Richard wrote:
> In article <499e7ecd.8000...@wixtoolset.org>,
> Rob Mensching   writes:
>
>   
>> Using conditions to control your CustomAction install/uninstall
>> behaviors is primitive and usually insufficient... but the most
>> visible.  Data driven CustomActions that modify machine state via
>> Resources should really use Component states.  That matches the design
>> of the Windows Installer.
>> 
>
> Let me see if I can restate this to make sure I understand what you're
> saying.
>
> For data-driven CAs, you would have some association between components
> and the custom data (custom columns on the Component table, or a custom
> table with a Component relation).  The CA executes its install actions
> for that custom data when the associated components are selected for
> installation and executes its uninstall actions for that custom data
> when the associated components are selected for removal.
>
> If that's correct, then yeah, I'd agree that is a better architecture
> than making one set of CAs (install, uninstall, rollback, commit) per
> component and conditionalizing each CA with the install state of the
> component.
>
> Then there are those "the app needs one of these" style CAs, where
> they aren't data driven and you need to do a specific thing when the
> app is installed, uninstalled, etc.
> --
> "The Direct3D Graphics Pipeline" -- DirectX 9 draft available for download
>   
>
> Legalize Adulthood! 
>
> --
> Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
> -OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
> -Strategies to boost innovation and cut costs with open source participation
> -Receive a $600 discount off the registration fee with the source code: SFAD
> http://p.sf.net/sfu/XcvMzF8H
> ___
> WiX-users mailing list
> WiX-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/wix-users
>   

--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


[WiX-users] Problem with MessageResult in DTF?

2009-02-20 Thread Joe Coplen
I'm trying to implement a files in use dialog and I've noticed a discrepancy 
between the values in Microsoft.Deployment.WindowsInstaller.MessageResult and 
the values of the dialog box command ID's in WinUser.h.  Here's what I see in 
MessageResult:



public enum MessageResult

{

Error = -1,

None = 0,

OK = 1,

Cancel = 2,

Abort = 2,

Retry = 3,

Ignore = 4,

Yes = 5,

No = 6,

}





Here's what I see in WinUser.h:



/*

 * Dialog Box Command IDs

 */

#define IDOK1

#define IDCANCEL2

#define IDABORT 3

#define IDRETRY 4

#define IDIGNORE5

#define IDYES   6

#define IDNO7



MessageResult values appear to be off by 1 from Abort on.   Is this a known 
problem?



-J

--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] question about upgrades and instance transforms

2009-02-20 Thread John Nannenga
I leave the upgrade code the same for all instances.  I have a dialog asking 
the user whether they'd like to upgrade an existing instance, or install a new 
instance (only if an existing instance is detected).

If the user selects to upgrade an existing instance, I store the product code 
of that instance in a property, PC_TO_UPGRADE.


I then have a CA which runs that sets the "MIGRATE" property and the property 
specified in the `Upgrade`.`ActionProperty` for the record in question 
appropriately and at the right time in the sequence as appropriate for the 
installation.


(essentially, this strips off the additional semi-colon delimited list of 
product codes for the other instances that the installation / upgrade should 
not care about).  


Do this before WI custom actions which act upon the property, and life is good. 
 :)



-Original Message-
From: Amy Rosewater [mailto:arosewa...@spectrumhr.com] 
Sent: Friday, February 20, 2009 9:47 AM
To: General discussion for Windows Installer XML toolset.
Subject: Re: [WiX-users] question about upgrades and instance transforms

Anyone have any thoughts on this?  In my mind I am thinking that I would
need to transform
the Upgrade Code for each instance and the values in the upgrade table
to match for
windows installer to properly identify the specific instance I wanted to
upgrade such that
in my newer installer "Instance1" upgrade code matches my older
installer upgrade code.  This
is just speculation, so if anyone has any experience supporting a major
upgrade for an
install with multiple embedded transforms, I would love to hear what you
did.

Thanks in advance,

Amy

-Original Message-
From: Amy Rosewater [mailto:arosewa...@spectrumhr.com] 
Sent: Thursday, February 19, 2009 10:18 AM
To: General discussion for Windows Installer XML toolset.
Subject: [WiX-users] question about upgrades and instance transforms

Hi All,

 

I am in the process of making the necessary changes to my installer to
make it support a major upgrade.

 

I have found several resources describing the creation of a major
upgrade, and I think I understand at least for the default instance of
my product, how to write the Wix required to make this work.  However,
in my application I have supported multiple side by side installations
through the use of embedded transforms created by the Wix nodes
 and .

 

Is there anything that I need to do differently in the creation of a
major upgrade installer so that it will work correctly with transformed
instances of my original install?

 

Thanks in advance,

 

Amy

 

Amy Rosewater

SPECTRUM Human Resource Systems Corporation

707 17th Street Suite 3800

Denver CO, 80202

303.592.3403

arosewa...@spectrumhr.com

 


--
Open Source Business Conference (OSBC), March 24-25, 2009, San
Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the
Enterprise
-Strategies to boost innovation and cut costs with open source
participation
-Receive a $600 discount off the registration fee with the source code:
SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] DTF - install, rollback and uninstall

2009-02-20 Thread Richard

In article ,
"Neil Sleightholm"   writes:

> I think you missed the point. I can see there are two different entry =
> points, one for install the other for uninstall but what I can't see is =
> the condition that says to run one on install and the other on =
> uninstall. (Using the SQL one was probably a bad example as that has an =
> override condition other don't.)

Yeah, the SQL one might just be a bad example here.  The SQL actions
are being gated by two different properties: SKIPUNINSTALLSQLDATA and
SKIPINSTALLSQLDATA.  Although I haven't examined the source to say for
sure, I'm willing to bet that there are type 51 CAs that set these
properties appropriately when these actions need to run.  So the "do
this on install", "do that on uninstall" logic is probably encoded in
the conditions on the CAs that set the properties SKIPUNINSTALLSQLDATA
and SKIPINSTALLSQLDATA.
-- 
"The Direct3D Graphics Pipeline" -- DirectX 9 draft available for download
  

Legalize Adulthood! 

--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] Passing data between deferred custom actions

2009-02-20 Thread John Nannenga
What happens when the data value you need contains what appears to be the 
delimiter between independent properties within the CustomActionData class?  
"semi-colon"...





-Original Message-
From: Rob Mensching [mailto:r...@wixtoolset.org] 
Sent: Tuesday, February 17, 2009 10:52 PM
To: General discussion for Windows Installer XML toolset.
Subject: Re: [WiX-users] Passing data between deferred custom actions

Most of the WiX toolset CustomActions do this.

Eitan Behar wrote:
> Does not look like fun, but it's doable ! Thanks !
>
> Etian
>
>
> On Tue, Feb 17, 2009 at 3:38 PM, Christopher Painter <
> chr...@deploymentengineering.com> wrote:
>
>   
>> You'll want to look at the CustomActionData class in DTF as described here:
>>
>> http://www.mail-archive.com/wix-users@lists.sourceforge.net/msg17875.html
>>
>> In a nutshell:
>>
>> In your immeadiate custom action, you instantiate the class, stuff it with
>> data and then serialize it out to a property.
>>
>> In your deferred custom action you read the CustomActionData property and
>> pass it to the class constructor for deserialziation back into your class
>> with all of it's data.
>>
>> As far as how to schedule these custom actions there are several patterns:
>>
>> 1) 1 immeadiate to 1 deferred relationship
>> 2) 1 immeadiate to multiple deferred relationship
>> 3) 1 immeadiate that calls DoAction to schedule the deferred ( this is the
>> way Jason describes in the above link. )
>>
>> When using #1 or #2, remember the immeadiate must be scheduled before the
>> deferred and the name of the property(s) to be set is the name of the
>> deferred custom actions(s).  This is how MSI makes the join.
>>
>> Christopher Painter, Author of Deployment Engineering Blog
>> Have a hot tip, know a secret or read a really good thread that deserves
>> attention? E-Mail Me
>>
>>
>> --- On Tue, 2/17/09, Eitan Behar  wrote:
>>
>> 
>>> From: Eitan Behar 
>>> Subject: Re: [WiX-users] Passing data between deferred custom actions
>>> To: chr...@deploymentengineering.com, "General discussion for Windows
>>>   
>> Installer XML toolset." 
>> 
>>> Date: Tuesday, February 17, 2009, 6:47 AM
>>> DTF C#
>>>
>>>
>>>
>>> On Tue, Feb 17, 2009 at 2:05 PM, Christopher Painter <
>>> chr...@deploymentengineering.com> wrote:
>>>
>>>   
 What language is the CA's written in?

 Christopher Painter, Author of Deployment Engineering
 
>>> Blog
>>>   
 Have a hot tip, know a secret or read a really good
 
>>> thread that deserves
>>>   
 attention? E-Mail Me


 --- On Tue, 2/17/09, Eitan Behar
 
>>>  wrote:
>>>   
> From: Eitan Behar 
> Subject: [WiX-users] Passing data between
>   
>>> deferred custom actions
>>>   
> To: "General discussion for Windows
>   
>>> Installer XML toolset." <
>>>   
 wix-users@lists.sourceforge.net>
 
> Date: Tuesday, February 17, 2009, 2:40 AM
> Hi,
>
> Is there a proper method to pass data between
>   
>>> deferred
>>>   
> custom actions ? I
> have a bunch of chained custom actions and need
>   
>>> to pass
>>>   
> data between them,
> actually, just a boolean value
>   
>>> "telling" the rest
>>>   
> of the ca whether to
> continue.
>
> Thanks,
>
> Eitan
>
>   
>> --
>> 
> Open Source Business Conference (OSBC), March
>   
>>> 24-25, 2009,
>>>   
> San Francisco, CA
> -OSBC tackles the biggest issue in open source:
>   
>>> Open
>>>   
> Sourcing the Enterprise
> -Strategies to boost innovation and cut costs
>   
>>> with open
>>>   
> source participation
> -Receive a $600 discount off the registration fee
>   
>>> with the
>>>   
> source code: SFAD
> http://p.sf.net/sfu/XcvMzF8H
> ___
> WiX-users mailing list
> WiX-users@lists.sourceforge.net
>
>   
>>> https://lists.sourceforge.net/lists/listinfo/wix-users
>>>   




 
>> --
>> 
 Open Source Business Conference (OSBC), March 24-25,
 
>>> 2009, San Francisco,
>>>   
 CA
 -OSBC tackles the biggest issue in open source: Open
 
>>> Sourcing the
>>>   
 Enterprise
 -Strategies to boost innovation and cut costs with
 
>>> open source
>>>   
 participation
 -Receive a $600 discount off the registration fee with
 
>>> the source code:
>>>   
 SFAD
 http://p.sf.net/sfu/XcvMzF8H
 ___
 WiX-users mailing list
 WiX-users@lists.sourcefor

Re: [WiX-users] DTF - install, rollback and uninstall

2009-02-20 Thread Richard

In article <499e7ecd.8000...@wixtoolset.org>,
Rob Mensching   writes:

> Using conditions to control your CustomAction install/uninstall 
> behaviors is primitive and usually insufficient... but the most 
> visible.  Data driven CustomActions that modify machine state via 
> Resources should really use Component states.  That matches the design 
> of the Windows Installer.

Let me see if I can restate this to make sure I understand what you're
saying.

For data-driven CAs, you would have some association between components
and the custom data (custom columns on the Component table, or a custom
table with a Component relation).  The CA executes its install actions
for that custom data when the associated components are selected for
installation and executes its uninstall actions for that custom data
when the associated components are selected for removal.

If that's correct, then yeah, I'd agree that is a better architecture
than making one set of CAs (install, uninstall, rollback, commit) per
component and conditionalizing each CA with the install state of the
component.

Then there are those "the app needs one of these" style CAs, where
they aren't data driven and you need to do a specific thing when the
app is installed, uninstalled, etc.
-- 
"The Direct3D Graphics Pipeline" -- DirectX 9 draft available for download
  

Legalize Adulthood! 

--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] Files in an MSI

2009-02-20 Thread Jim Williams
You could try an administrative install:

msiexec /a xxx.msi

Jim Williams

-Original Message-
From: MacDiarmid, James D [mailto:james.macdiar...@eds.com] 
Sent: Friday, February 20, 2009 9:05 AM
To: General discussion for Windows Installer XML toolset.
Subject: [WiX-users] Files in an MSI


Is there any way to extract the files to be installed from an MSI
package? 

Thanks,
Jim
--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


[WiX-users] don't put searchable stuff on your signature pls.

2009-02-20 Thread Frederico Rico Apostolo
I'd like to complain... I tried to find what condition should I use to find if 
AJAX Extensions is installed, it's impossible because some1 u must say is very 
active and that's good, great, have this signature full of products and 
architectures, which makes hard to find information about that stuff lol, look 
at mine pls.


Frederico Apóstolo.
--
I can do anything.
--

-Original Message-
From: MacDiarmid, James D [mailto:james.macdiar...@eds.com]
Sent: sexta-feira, 20 de Fevereiro de 2009 17:09
To: General discussion for Windows Installer XML toolset.
Subject: Re: [WiX-users] IUSR_ and IWAM_


I'm basically automating a currently "manual" process, and it's on our
list of things to do.

-Original Message-
From: Rob Mensching [mailto:r...@wixtoolset.org]
Sent: Thursday, February 19, 2009 8:42 PM
To: General discussion for Windows Installer XML toolset.
Subject: Re: [WiX-users] IUSR_ and IWAM_

Unfortunately, have to write a CustomAction for that.  Not sure I'd put
that *inside* my install if it doesn't happen often...

MacDiarmid, James D wrote:
> Is there a way to check the IUSR_ and IWAM_ users and make
> sure they are not in the guest group?
>
> Thanks,
> Jim
>
>
>
> --
>  Open Source Business Conference (OSBC), March 24-25, 2009,
> San Francisco, CA -OSBC tackles the biggest issue in open source: Open

> Sourcing the Enterprise -Strategies to boost innovation and cut costs
> with open source participation -Receive a $600 discount off the
> registration fee with the source code: SFAD
> http://p.sf.net/sfu/XcvMzF8H
> ___
> WiX-users mailing list
> WiX-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/wix-users
>


--
Open Source Business Conference (OSBC), March 24-25, 2009, San
Francisco, CA -OSBC tackles the biggest issue in open source: Open
Sourcing the Enterprise -Strategies to boost innovation and cut costs
with open source participation -Receive a $600 discount off the
registration fee with the source code: SFAD http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


__

Esta mensagem e ficheiros anexos incluem matéria privada, confidencial e 
legalmente protegida, 
exclusivamente destinada a quem nela conste como destinatário. Se recebeu esta 
mensagem por 
engano, agradecemos que informe de imediato o remetente e que elimine a 
mensagem e os 
ficheiros sem os utilizar, divulgar ou reproduzir.

This message and attached files contain private, confidential and legally 
privileged information, 
exclusively intended for the named addressees. If you have received this 
message in error, 
please contact the sender immediately and delete the message and files without 
utilization, 
circulation or reproduction.


--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] IUSR_XXXX and IWAM_XXXX

2009-02-20 Thread MacDiarmid, James D

I'm basically automating a currently "manual" process, and it's on our
list of things to do. 

-Original Message-
From: Rob Mensching [mailto:r...@wixtoolset.org] 
Sent: Thursday, February 19, 2009 8:42 PM
To: General discussion for Windows Installer XML toolset.
Subject: Re: [WiX-users] IUSR_ and IWAM_

Unfortunately, have to write a CustomAction for that.  Not sure I'd put
that *inside* my install if it doesn't happen often...

MacDiarmid, James D wrote:
> Is there a way to check the IUSR_ and IWAM_ users and make 
> sure they are not in the guest group?
>
> Thanks,
> Jim
>
>
>
> --
>  Open Source Business Conference (OSBC), March 24-25, 2009, 
> San Francisco, CA -OSBC tackles the biggest issue in open source: Open

> Sourcing the Enterprise -Strategies to boost innovation and cut costs 
> with open source participation -Receive a $600 discount off the 
> registration fee with the source code: SFAD 
> http://p.sf.net/sfu/XcvMzF8H 
> ___
> WiX-users mailing list
> WiX-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/wix-users
>   


--
Open Source Business Conference (OSBC), March 24-25, 2009, San
Francisco, CA -OSBC tackles the biggest issue in open source: Open
Sourcing the Enterprise -Strategies to boost innovation and cut costs
with open source participation -Receive a $600 discount off the
registration fee with the source code: SFAD http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


[WiX-users] Files in an MSI

2009-02-20 Thread MacDiarmid, James D

Is there any way to extract the files to be installed from an MSI
package? 

Thanks,
Jim
--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] creating wix extensions

2009-02-20 Thread Brian Rogers
Hey Sean,

I think you just need to have the table in the DB (can be empty) and then
create records for it. See this for a start.

http://msdn.microsoft.com/en-us/library/aa370072(VS.85).aspx

Thanks,

Brian Rogers
"Intelligence removes complexity." - Me
http://icumove.spaces.live.com


On Fri, Feb 20, 2009 at 5:48 AM, Sean Farrow
wrote:

> Hi Bob:
> It's not static data, it's dynamically picked up during install. If I
> can create a table and add data to this table (in ca's), this would
> suffice nicely.
> Any help apreciated as to how to do this.
> Cheers
> Sean.
>
>
> -Original Message-
> From: Bob Arnson [mailto:b...@joyofsetup.com]
> Sent: 19 February 2009 18:01
> To: General discussion for Windows Installer XML toolset.
> Subject: Re: [WiX-users] creating wix extensions
>
>  Sean Farrow wrote:
> > Firstly, thanks for the pointers. How then do I fill a table using a
> > custom action at runtime. It seems I can get away with doing this, and
>
> > then have in installation query this table for the info I need via
> > other ca's.
> >
>
> If it's static data, it'll be much easier to create it via an extension
> from XML authoring. Otherwise, where do you get the data in the first
> place?
>
> --
> sig://boB
> http://joyofsetup.com/
>
>
>
> 
> --
> Open Source Business Conference (OSBC), March 24-25, 2009, San
> Francisco, CA
> -OSBC tackles the biggest issue in open source: Open Sourcing the
> Enterprise
> -Strategies to boost innovation and cut costs with open source
> participation
> -Receive a $600 discount off the registration fee with the source code:
> SFAD
> http://p.sf.net/sfu/XcvMzF8H
> ___
> WiX-users mailing list
> WiX-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/wix-users
>
>
> __ Information from ESET NOD32 Antivirus, version of virus
> signature database 3868 (20090219) __
>
> The message was checked by ESET NOD32 Antivirus.
>
> http://www.eset.com
>
>
>
> __ Information from ESET NOD32 Antivirus, version of virus
> signature database 3868 (20090219) __
>
> The message was checked by ESET NOD32 Antivirus.
>
> http://www.eset.com
>
>
>
> --
> Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco,
> CA
> -OSBC tackles the biggest issue in open source: Open Sourcing the
> Enterprise
> -Strategies to boost innovation and cut costs with open source
> participation
> -Receive a $600 discount off the registration fee with the source code:
> SFAD
> http://p.sf.net/sfu/XcvMzF8H
> ___
> WiX-users mailing list
> WiX-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/wix-users
>
--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] question about upgrades and instance transforms

2009-02-20 Thread Amy Rosewater
Anyone have any thoughts on this?  In my mind I am thinking that I would
need to transform
the Upgrade Code for each instance and the values in the upgrade table
to match for
windows installer to properly identify the specific instance I wanted to
upgrade such that
in my newer installer "Instance1" upgrade code matches my older
installer upgrade code.  This
is just speculation, so if anyone has any experience supporting a major
upgrade for an
install with multiple embedded transforms, I would love to hear what you
did.

Thanks in advance,

Amy

-Original Message-
From: Amy Rosewater [mailto:arosewa...@spectrumhr.com] 
Sent: Thursday, February 19, 2009 10:18 AM
To: General discussion for Windows Installer XML toolset.
Subject: [WiX-users] question about upgrades and instance transforms

Hi All,

 

I am in the process of making the necessary changes to my installer to
make it support a major upgrade.

 

I have found several resources describing the creation of a major
upgrade, and I think I understand at least for the default instance of
my product, how to write the Wix required to make this work.  However,
in my application I have supported multiple side by side installations
through the use of embedded transforms created by the Wix nodes
 and .

 

Is there anything that I need to do differently in the creation of a
major upgrade installer so that it will work correctly with transformed
instances of my original install?

 

Thanks in advance,

 

Amy

 

Amy Rosewater

SPECTRUM Human Resource Systems Corporation

707 17th Street Suite 3800

Denver CO, 80202

303.592.3403

arosewa...@spectrumhr.com

 


--
Open Source Business Conference (OSBC), March 24-25, 2009, San
Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the
Enterprise
-Strategies to boost innovation and cut costs with open source
participation
-Receive a $600 discount off the registration fee with the source code:
SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] Trouble registering .NET assembly from GAC into COM+

2009-02-20 Thread Don Benson
> Windows Installer does not commit files to the GAC until
> InstallFinalize
> (the end of the transaction).  This prevents GAC assemblies from being
> used or even referenced really during the installation transaction.  I
> think this design limitation is the root of your issue.

So, now I know the problem. The next question is, what is a recommended 
solution to the problem? Is there a best practice?

I tried scheduling the ComPlusInstallExecute custom action after 
InstallFinalize, but this generates an ICE77 validation error because the 
action is an in-script action and must be between InstallInitialize and 
InstallFinalize. Then I tried scheduling ComPlusInstallPrepare after 
InstallFinalize. This compiled, but then errored off during the installation 
with the same message about where it is allowed to be scheduled.

How do I get the COM Plus registration to occur after the InstallFinalize?

The documentation for the ComPlusAssembly element implies that setting the 
RegisterInCommit attribute to "yes" should schedule the assembly to be 
registered after the InstallFinalize action. I have that attribute set, but the 
registration is definitely getting scheduled before InstallFinalize. Is this a 
bug in the latest build of the ComPlus extension?

As I see it, I have several options with current version...

Option 1:
Include the .NET DLL in the GAC and in a folder, which requires separate 
components for the file. I've seen threads about deploying .Net assemblies to 
both places. The ComPlus configuration can reference the DLL component that 
installs to a folder. If there is an error during the COM+ registration, the 
entire installation will be rolled back. Upgrades and removals are handles 
automatically through the built-in functionality.

Option 2:
Do not reference the .NET assembly in a ComPlusAssembly element. Create my own 
custom action to register the .NET assembly into the existing COM+ App. The 
custom action will be scheduled after InstallFinalize. If this custom action 
fails, the app will still be installed, but non-functional. I will also have to 
also deal with upgrades and removals.

Option 3:
Package the COM+ application separately using the export option from the 
COMAdminCatalog API. The package would have to be built into a bootstrapper 
that installs the rest of our server-based utilities. This creates another 
entry in Add/Remove programs just for the COM+ application.

Option 4:
Manage the COM+ application with all custom code. The server includes a 
"heartbeat" service. We could add functionality to the heartbeat service to 
validate that the COM+ configuration is correct and try to fix it. Upgrades and 
removals are still a complication.

Option 1 seems to be the simplest choice for now, and I do have some time 
pressure to get the installation working soon. I would appreciate any other 
ideas or thoughts on my options.

Sincerely,
- Don Benson -

CONFIDENTIALITY NOTICE: This email and any files transmitted with it are the 
property of Tribute Inc. and/or its affiliates. The contents of this 
communication are confidential and may contain information that is privileged 
and/or exempt from disclosure under applicable law. It is intended solely for 
use of the individual or entity to whom this email is addressed. If you are not 
one of the named recipient(s) or otherwise have reason to believe that you have 
received this message in error, please notify the sender and immediately delete 
this message and any attachments. Any unauthorized use, retention, 
dissemination, forwarding, printing, or copying of this email is strictly 
prohibited.

--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] Conditions in fragments

2009-02-20 Thread Eitan Behar
You can also have an empty component group and add reference to it from the
product file. - this is what I do :^)


-Original Message-
From: Frederico Rico Apostolo [mailto:frederico.apost...@vantyx.com] 
Sent: Friday, February 20, 2009 4:49 PM
To: General discussion for Windows Installer XML toolset.
Subject: [WiX-users] Conditions in fragments

I'm using v3 votive in vs2005 and I lost sometime trying to have a fragment
with only launch conditions, I've realized that even with compile propriety
in the solution that fragment was ignored, unless I had a propriety or a
custom action in that fragment linked or sub linked to the , just a
warning for those that try to be as modular as I , if I'm wrong correct me
pls.

__

Esta mensagem e ficheiros anexos incluem materia privada, confidencial e
legalmente protegida, 
exclusivamente destinada a quem nela conste como destinatario. Se recebeu
esta mensagem por 
engano, agradecemos que informe de imediato o remetente e que elimine a
mensagem e os 
ficheiros sem os utilizar, divulgar ou reproduzir.

This message and attached files contain private, confidential and legally
privileged information, 
exclusively intended for the named addressees. If you have received this
message in error, 
please contact the sender immediately and delete the message and files
without utilization, 
circulation or reproduction.



--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


[WiX-users] Conditions in fragments

2009-02-20 Thread Frederico Rico Apostolo
I'm using v3 votive in vs2005 and I lost sometime trying to have a fragment 
with only launch conditions, I've realized that even with compile propriety in 
the solution that fragment was ignored, unless I had a propriety or a custom 
action in that fragment linked or sub linked to the , just a warning 
for those that try to be as modular as I , if I'm wrong correct me pls.

__

Esta mensagem e ficheiros anexos incluem materia privada, confidencial e 
legalmente protegida, 
exclusivamente destinada a quem nela conste como destinatario. Se recebeu esta 
mensagem por 
engano, agradecemos que informe de imediato o remetente e que elimine a 
mensagem e os 
ficheiros sem os utilizar, divulgar ou reproduzir.

This message and attached files contain private, confidential and legally 
privileged information, 
exclusively intended for the named addressees. If you have received this 
message in error, 
please contact the sender immediately and delete the message and files without 
utilization, 
circulation or reproduction.


--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] creating wix extensions

2009-02-20 Thread Sean Farrow
Hi Bob: 
It's not static data, it's dynamically picked up during install. If I
can create a table and add data to this table (in ca's), this would
suffice nicely.
Any help apreciated as to how to do this.
Cheers
Sean.


-Original Message-
From: Bob Arnson [mailto:b...@joyofsetup.com] 
Sent: 19 February 2009 18:01
To: General discussion for Windows Installer XML toolset.
Subject: Re: [WiX-users] creating wix extensions

Sean Farrow wrote:
> Firstly, thanks for the pointers. How then do I fill a table using a 
> custom action at runtime. It seems I can get away with doing this, and

> then have in installation query this table for the info I need via 
> other ca's.
>   

If it's static data, it'll be much easier to create it via an extension
from XML authoring. Otherwise, where do you get the data in the first
place?

--
sig://boB
http://joyofsetup.com/




--
Open Source Business Conference (OSBC), March 24-25, 2009, San
Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the
Enterprise
-Strategies to boost innovation and cut costs with open source
participation
-Receive a $600 discount off the registration fee with the source code:
SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users
 

__ Information from ESET NOD32 Antivirus, version of virus
signature database 3868 (20090219) __

The message was checked by ESET NOD32 Antivirus.

http://www.eset.com
 
 

__ Information from ESET NOD32 Antivirus, version of virus
signature database 3868 (20090219) __

The message was checked by ESET NOD32 Antivirus.

http://www.eset.com
 

--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] SILENT ISNTALLATION

2009-02-20 Thread Christopher Painter
Do you want the text file to be read during ONLY silent installs or both 
interactive and silent installs?

If both, schedule the CA somewhere before costing in both the UI and the 
Execute sequence.  Attribute it to run only once.

If only silent, schedule the CA somewhere before costing in only the execute 
sequence.   Run only once isn't needed.

Remember, in silent installs the UI sequence isn't processed.  Only the execute 
sequence is.


Christopher Painter, Author of Deployment Engineering Blog
Have a hot tip, know a secret or read a really good thread that deserves 
attention? E-Mail Me


--- On Fri, 2/20/09, MYFLEX  wrote:

> From: MYFLEX 
> Subject: [WiX-users]  SILENT ISNTALLATION
> To: wix-users@lists.sourceforge.net
> Date: Friday, February 20, 2009, 12:36 AM
> Hi, 
> 
> I want my installer to be silent installation. for that I
> want to pass the
> values to all the properties. 
> I can want to give all the values in a text file and read
> them. But my doubt
> is when to shedule this custom action? 
> before executing the msi 
> msiexec /i /q aa.msi INSTALLDIR= MYPROPERTY= 
> 
> Please clarify my doubt. 
> -- 
> View this message in context:
> http://n2.nabble.com/SILENT-ISNTALLATION-tp2357367p2357367.html
> Sent from the wix-users mailing list archive at Nabble.com.
> 
> 
> --
> Open Source Business Conference (OSBC), March 24-25, 2009,
> San Francisco, CA
> -OSBC tackles the biggest issue in open source: Open
> Sourcing the Enterprise
> -Strategies to boost innovation and cut costs with open
> source participation
> -Receive a $600 discount off the registration fee with the
> source code: SFAD
> http://p.sf.net/sfu/XcvMzF8H
> ___
> WiX-users mailing list
> WiX-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/wix-users


  

--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] SILENT ISNTALLATION

2009-02-20 Thread Don Benson
> I want my installer to be silent installation. for that I want to pass
> the
> values to all the properties.
> I can want to give all the values in a text file and read them. But my
> doubt
> is when to shedule this custom action?
> before executing the msi
> msiexec /i /q aa.msi INSTALLDIR= MYPROPERTY=

A custom action cannot occur before executing the MSI. Custom actions are 
inherently part of the MSI. You could create a custom action that reads the 
text file and sets properties. If you're using Wix 3.0, You could use the DTF 
tools to create that custom action in managed code.

Another option is to use a separate SETUP.exe executable, such as a 
bootstrapper. The executable could read the text file and construct the command 
line that is used to call MSIEXEC. There is a limit, however, to how many 
properties you'll be able to defined on the command line. Windows limits 
commands to 2048 characters.

Here's a link where somebody has done a similar type of thing using a VBScript 
custom action:
http://blog.coretech.dk/section/scripting/vbscript-scripting/automated-windows-installer-properties-from-ini-embedded-vbscript/

- Don Benson -

CONFIDENTIALITY NOTICE: This email and any files transmitted with it are the 
property of Tribute Inc. and/or its affiliates. The contents of this 
communication are confidential and may contain information that is privileged 
and/or exempt from disclosure under applicable law. It is intended solely for 
use of the individual or entity to whom this email is addressed. If you are not 
one of the named recipient(s) or otherwise have reason to believe that you have 
received this message in error, please notify the sender and immediately delete 
this message and any attachments. Any unauthorized use, retention, 
dissemination, forwarding, printing, or copying of this email is strictly 
prohibited.

--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] Visual Studio Integration Question

2009-02-20 Thread Jakob Ehn
Hi, this is a Visual Studio Add-in that you are referring to. You can create a 
Visual Studio add-in by using the new project wizard, and
select the add-in project type beneath the Other Project Types -> Extensibility.

There is some documentation at MSDN, but I have found the best guidance to be 
the blog of Carlos Quintero, especially this references page:
http://www.mztools.com/resources_vsnet_addins.aspx

This page in particular how you how to add a popup menu bar to the context menu 
of the Code Window:
http://www.mztools.com/articles/2004/MZ2004003.aspx

You can basically jut replace the menu name with "Project" of "Item" to have 
the context menu appear when you right-click a project/project item.

Hope that helps
/Jakob 

-Original Message-
From: Christopher Painter [mailto:chr...@deploymentengineering.com] 
Sent: den 19 februari 2009 23:45
To: wix-users@lists.sourceforge.net
Subject: [WiX-users] Visual Studio Integration Question

I have a question about something but I don't know the terminology needed to do 
a google search.

Does anyone know what it's called and how to configure  the right click context 
menu items that appear on visual studio project items?

For example, in a WCF Service Library project you can right click App.Config 
and get a menu entry called "Edit WCF Configuration".

I see where you can do an open with and set default but that's too clunky.  I 
need to figure out how to add an easier to access, non-default menu item for a 
specific file extension ( .wxs of course :-)  )



  

--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] DTF - install, rollback and uninstall

2009-02-20 Thread Neil Sleightholm
Thanks Rob, the mist is starting to clear.
 
Neil
 
Neil Sleightholm
X2 Systems Limited
n...@x2systems.com  
 



From: Rob Mensching [mailto:r...@wixtoolset.org]
Sent: Fri 20/02/2009 09:58
To: General discussion for Windows Installer XML toolset.
Subject: Re: [WiX-users] DTF - install, rollback and uninstall



There is a helper function in wcautil that is usually a tell tale sign
you've found the code ::WcaGetComponentToDo().  The old school way (most
of serverca uses the old school) is to call
WcaIsInstalling()/WcaIsReInstalling()/WcaIsUninstalling() to determine
the scheduling.  WcaGetComponentToDo() is a nice wrapper that cleans up
much of the confusion.

Using conditions to control your CustomAction install/uninstall
behaviors is primitive and usually insufficient... but the most
visible.  Data driven CustomActions that modify machine state via
Resources should really use Component states.  That matches the design
of the Windows Installer.

Neil Sleightholm wrote:
> I don't suppose you could point me in the direction of the code that controls 
> that for one for the WiX CA's so I can learn how to do it.
>
> Thanks
>
> Neil
>
> Neil Sleightholm
> X2 Systems Limited
> n...@x2systems.com 
>
>
> 
>
> From: Bob Arnson [mailto:b...@joyofsetup.com]
> Sent: Fri 20/02/2009 01:15
> To: General discussion for Windows Installer XML toolset.
> Subject: Re: [WiX-users] DTF - install, rollback and uninstall
>
>
>
> Neil Sleightholm wrote:
>  
>> Where is the detection or conditional calls in that? In most cases this
>> seems to end up calling the same code but with a true/false code
>> indicating install/uninstall.
>>
>>
>
> Some of them need to have very different -- or differently-timed --
> behavior during install -v- uninstall but both still do their things
> based on the component-level action state.
>
> --
> sig://boB
> http://joyofsetup.com/
>
>
>
> --
> Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
> -OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
> -Strategies to boost innovation and cut costs with open source participation
> -Receive a $600 discount off the registration fee with the source code: SFAD
> http://p.sf.net/sfu/XcvMzF8H
> ___
> WiX-users mailing list
> WiX-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/wix-users
>
>
>  

--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] question about upgrades and instance transforms

2009-02-20 Thread Michael Osmond
Hello Amy,
 
I have been through this, here's my experience.   By the way, if some one can 
tell me there's a better way, I'd love to know.
 
Most of this is not wix specific, but can be implemented with WIX.  Some of it 
is bootstrap stuff.
 
I assume you want to upgrade each instance independently and possibly not in 
the same order you installed them.  
 
The biggest issue when it comes to major upgrade is that because an instance 
has the same UpgradeCode but a different ProductCode, it can look like another 
version of the product, so the FindRelatedProduct action will find all of the 
existing Instances when any instance is being upgraded.  The danger with this 
is that the first instance to be upgraded will upgrade one instance and remove 
all other instances at RemoveExistingProduct.  I protect against this by having 
the install write its product code to the registry.  I read this in on each 
install.  I let FindRelatedProduct do its work, but then I overwrite the list 
found by FindRelatedProduct with my instance.
 
The second thing is that you need to change the ProductCode for each of your 
instance transforms, otherwise the ProductCode is not changing for the instance 
which is not a Major Upgrade.   This can be really messy.
 
The third thing is that you now have to boot strap the MSI correctly - with the 
correct transform for the particular instance you are updating based on the 
user making a selection.   So my bootstrapper (which is a HTA) uses the 
Installer.RelatedProduct property (in the Automation Interface) to get the 
instances installed, and then lets the user select which they want to upgrade.  
 To do this the bootstrap must have a mapping of the existing ProductCode of an 
existing instance to the command string that upgrades that particular instance 
to its new instance.
 
The command line for the major upgrade will need to have MSINEWINSTANCE=1 and 
TRANSFORMS=.   You might have to experiment a bit 
with the original non-instance install (it doesn't need either of these).
 
By the way, if by chance you want to install a new instance with the new 
version (ie you have instances of the old version on the system and you want to 
add a further instance but with the new version) be carefull.  
FindRelatedProducts will still kick in and find the old versions even though 
you think its just installing, end result is that it removes the old instances. 
 I actually do all my instance installs with a property called CLEAN=1 which I 
use to stop FindRelatedProducts from running.
 
I have also had some problems with MigrateFeatuerState seeming to give me the 
union of features selected for different instances, but I really haven't got to 
the bottom of that one.
 
I hope that helps and I would like to know if you learn anything, or find a 
better way to do it.
 
Regards
 
Michael



From: Amy Rosewater [mailto:arosewa...@spectrumhr.com]
Sent: Fri 20/02/2009 3:18 AM
To: General discussion for Windows Installer XML toolset.
Subject: [WiX-users] question about upgrades and instance transforms



Hi All,



I am in the process of making the necessary changes to my installer to
make it support a major upgrade.



I have found several resources describing the creation of a major
upgrade, and I think I understand at least for the default instance of
my product, how to write the Wix required to make this work.  However,
in my application I have supported multiple side by side installations
through the use of embedded transforms created by the Wix nodes
 and .



Is there anything that I need to do differently in the creation of a
major upgrade installer so that it will work correctly with transformed
instances of my original install?



Thanks in advance,



Amy



Amy Rosewater

SPECTRUM Human Resource Systems Corporation

707 17th Street Suite 3800

Denver CO, 80202

303.592.3403

arosewa...@spectrumhr.com



--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H___
WiX-users mailing list
WiX-users@li

Re: [WiX-users] DTF - install, rollback and uninstall

2009-02-20 Thread Rob Mensching
There is a helper function in wcautil that is usually a tell tale sign 
you've found the code ::WcaGetComponentToDo().  The old school way (most 
of serverca uses the old school) is to call 
WcaIsInstalling()/WcaIsReInstalling()/WcaIsUninstalling() to determine 
the scheduling.  WcaGetComponentToDo() is a nice wrapper that cleans up 
much of the confusion.

Using conditions to control your CustomAction install/uninstall 
behaviors is primitive and usually insufficient... but the most 
visible.  Data driven CustomActions that modify machine state via 
Resources should really use Component states.  That matches the design 
of the Windows Installer.

Neil Sleightholm wrote:
> I don't suppose you could point me in the direction of the code that controls 
> that for one for the WiX CA's so I can learn how to do it.
>
> Thanks
>
> Neil
>
> Neil Sleightholm
> X2 Systems Limited
> n...@x2systems.com 
>
>
> 
>
> From: Bob Arnson [mailto:b...@joyofsetup.com]
> Sent: Fri 20/02/2009 01:15
> To: General discussion for Windows Installer XML toolset.
> Subject: Re: [WiX-users] DTF - install, rollback and uninstall
>
>
>
> Neil Sleightholm wrote:
>   
>> Where is the detection or conditional calls in that? In most cases this
>> seems to end up calling the same code but with a true/false code
>> indicating install/uninstall.
>>
>> 
>
> Some of them need to have very different -- or differently-timed --
> behavior during install -v- uninstall but both still do their things
> based on the component-level action state.
>
> --
> sig://boB
> http://joyofsetup.com/
>
>
>
> --
> Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
> -OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
> -Strategies to boost innovation and cut costs with open source participation
> -Receive a $600 discount off the registration fee with the source code: SFAD
> http://p.sf.net/sfu/XcvMzF8H
> ___
> WiX-users mailing list
> WiX-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/wix-users
>
>
>   

--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] rouble registering .NET assembly from GAC into COM+

2009-02-20 Thread Rob Mensching
Windows Installer does not commit files to the GAC until InstallFinalize 
(the end of the transaction).  This prevents GAC assemblies from being 
used or even referenced really during the installation transaction.  I 
think this design limitation is the root of your issue.

Don Benson wrote:
> I am trying to generate a COM+ App that includes a .NET DLL that is installed 
> in the GAC. I am able to get the following project sample to successfully 
> install on Windows 2000 with .NET 2.0. This sample does not put the COM+ DLL 
> in the GAC, but it does put a dependency (CSLA) in the GAC.
>
> 
> http://schemas.microsoft.com/wix/2006/wi";
>  xmlns:util="http://schemas.microsoft.com/wix/UtilExtension";
>  xmlns:complus="http://schemas.microsoft.com/wix/ComPlusExtension";>
>  Name="TestInstaller" Language="1033" Version="1.0.0.0" 
> Manufacturer="TestInstaller" 
> UpgradeCode="abdf00e1-a390-4f83-b3d3-f4d56b8d2d2d">
> 
>
> 
>
> 
>   
>  FileSource="$(var.FileRoot)\ServerSource">
>   
>  Guid="{5E9AAC87-7163-40CE-82C2-A9D27E80CD8D}">
>Context="InprocServer32" Description="Csla.Server.ServicedDataPortal" 
> ThreadingModel="both" ForeignServer="mscoree.dll">
>  Description="Csla.Server.ServicedDataPortal"/>
>   
>Assembly=".net" Source="$(var.FileRoot)\ClientAssemblies\Csla.dll"/>
> 
>  Guid="{74CA7262-9003-43FB-BCCD-EAD0E7A88DCF}">
>Context="InprocServer32" 
> Description="MyProduct.EnterpriseServicesHost.EnterpriseServicesPortal" 
> ThreadingModel="both" ForeignServer="mscoree.dll">
>  Id="MyProduct.EnterpriseServicesHost.EnterpriseServicesPortal" 
> Description="MyProduct.EnterpriseServicesHost.EnterpriseServicesPortal" />
>   
>Name="MyProduct.EnterpriseServicesHost.dll" KeyPath="yes"
> Assembly="no"
> 
> Source="$(var.FileRoot)\ClientAssemblies\MyProduct.EnterpriseServicesHost.dll"/>
>ApplicationId="{3323762F-6B27-11D5-BC30-009027CC66CD}" Name="MyProduct"
> AccessChecksLevel="applicationLevel" 
> ApplicationAccessChecksEnabled="no" Authentication="none"
> Identity="[MYUSERNAME]" Password="[MYPASSWORD]">
>   
> DllPath="[#MyProduct.EnterpriseServicesHost.dll]"
>  
> TlbPath="[#MyProduct.EnterpriseServicesHost.tlb]"
>  Type=".net" RegisterInCommit="yes">
>CLSID="E8E5308E-6B44-3DBC-8F04-8F35CE437F0B" 
> Description="MyProduct.EnterpriseServicesHost.EnterpriseServicesPortal"/>
> 
>   
> 
>  Guid="17F7F642-0D4C-46EC-BD4C-EB69B888BE83">
>Source="$(var.FileRoot)\ClientAssemblies\MyProduct.EnterpriseServicesHost.tlb"
>  KeyPath="yes"/>
> 
>   
> 
>   
> 
>
> 
>   
>   
>   
> 
> 
> 
>
> To use the GAC, I make three changes:
> o Set File/@Assembly to ".net" instead of "no" on the "Host" DLL o Remove the 
> DLLPath attribute from the ComPlusAssembly element.
> o Add DLLPathFromGAC = "yes" to the ComPlusAssembly element.
>
> When I run this install, it fails with the following info in the log:
> MSI (s) (F4:3C) [23:03:24:458]: Invoking remote custom action. DLL: 
> C:\WINNT\Installer\MSI44.tmp, Entrypoint: ComPlusInstallExecuteCommit
> ComPlusInstallExecuteCommit:  Registering assembly, key: 
> MyProduct.EnterpriseServicesHost
> ComPlusInstallExecuteCommit:  Error 0x80070490: Failed to get path for 
> assembly from GAC
> ComPlusInstallExecuteCommit:  Error 0x80070490: Failed to register assembly, 
> key: MyProduct.EnterpriseServicesHost
> ComPlusInstallExecuteCommit:  Error 0x80070490: Failed to register assemblies
>
> When I used ProcMon to monitor the activity, I saw that the DLL was being put 
> in the GAC. Specifically, it was going into the GAC_MSIL folder. Then, at the 
> time registration would be happening, I saw a file request for the DLL from 
> the GAC folder, which was not found.
>
> I'm not sure exactly what is going on here. I need to put the DLLs in the GAC 
> because Windows 2000 COM+ applications don't have an application root folder. 
> Without the GAC, I'd have to put the .NET DLLs in the System32 folder.
>
> Is this a misconfigured project, a bug in the Wix extension, a problem in 
> .NET, or what? Do I have any workaround options?
>
> Oh, I almost forgot... this is built with WIX v3.0.5006 (built 06-Feb-09).
>
> - Don Benson -
>
> CONFIDENTIALITY NOTICE: This email and any files transmitted with it are the 
> property of Tribute Inc. and/or its affiliates. The contents of this 
> communication are confidential and may contain information that is privileg

Re: [WiX-users] ProgressText during Custom actions Execution

2009-02-20 Thread Neil Sleightholm
Something like this should do it:

  Doing something...

 
Neil
 
Neil Sleightholm
X2 Systems Limited
n...@x2systems.com  
 



From: Kusuma Sudheer Kumar (Tata Consultancy Services) 
[mailto:v-kku...@microsoft.com]
Sent: Fri 20/02/2009 09:17
To: General discussion for Windows Installer XML toolset.
Subject: [WiX-users] ProgressText during Custom actions Execution



Hi,
I am calling my Custom actions After InstallFinalize Event.
Thing is that, I am doing various actions inside my Custom 
action and it takes some time to execute all of them.
Rather than user waiting to see what is happening, I want to 
send the Progress Text to Installer  screen.

Please do let me know how to send the status.

Suggestions are appreciated.

Thanks
Sudheer
--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


[WiX-users] ProgressText during Custom actions Execution

2009-02-20 Thread Kusuma Sudheer Kumar (Tata Consultancy Services)
Hi,
I am calling my Custom actions After InstallFinalize Event.
Thing is that, I am doing various actions inside my Custom 
action and it takes some time to execute all of them.
Rather than user waiting to see what is happening, I want to 
send the Progress Text to Installer  screen.

Please do let me know how to send the status.

Suggestions are appreciated.

Thanks
Sudheer
--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] DTF - install, rollback and uninstall

2009-02-20 Thread Neil Sleightholm
I don't suppose you could point me in the direction of the code that controls 
that for one for the WiX CA's so I can learn how to do it.
 
Thanks
 
Neil
 
Neil Sleightholm
X2 Systems Limited
n...@x2systems.com  
 



From: Bob Arnson [mailto:b...@joyofsetup.com]
Sent: Fri 20/02/2009 01:15
To: General discussion for Windows Installer XML toolset.
Subject: Re: [WiX-users] DTF - install, rollback and uninstall



Neil Sleightholm wrote:
> Where is the detection or conditional calls in that? In most cases this
> seems to end up calling the same code but with a true/false code
> indicating install/uninstall.
>  

Some of them need to have very different -- or differently-timed --
behavior during install -v- uninstall but both still do their things
based on the component-level action state.

--
sig://boB
http://joyofsetup.com/



--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] DTF - install, rollback and uninstall

2009-02-20 Thread Neil Sleightholm
I think you missed the point. I can see there are two different entry points, 
one for install the other for uninstall but what I can't see is the condition 
that says to run one on install and the other on uninstall. (Using the SQL one 
was probably a bad example as that has an override condition other don't.)
 
Neil
 
Neil Sleightholm
X2 Systems Limited
n...@x2systems.com  
 



From: Richard [mailto:legal...@xmission.com]
Sent: Fri 20/02/2009 00:19
To: wix-users@lists.sourceforge.net
Subject: Re: [WiX-users] DTF - install, rollback and uninstall




In article ,
"Neil Sleightholm"   writes:

> I have to admit to being confused! Looking at the built in WiX custom
> actions I see code like this in their wixlibs:
>
>  DllEntry="InstallSqlData" Execute="immediate" Return="check" />
^^
>  DllEntry="UninstallSqlData" Execute="immediate" Return="check" />


These define two CAs with different entry points into the same DLL.

> 
>  Overridable="yes">NOT SKIPUNINSTALLSQLDATA AND VersionNT > 400
>  Overridable="yes">NOT SKIPINSTALLSQLDATA AND VersionNT > 400
> 
>
> Where is the detection or conditional calls in that? In most cases this
> seems to end up calling the same code but with a true/false code
> indicating install/uninstall.

The two have different code and different conditions (properties
SKIPUNINSTALLSQLDATA vs. SKIPINSTALLSQLDATA).
--
"The Direct3D Graphics Pipeline" -- DirectX 9 draft available for download
  

Legalize Adulthood! 

--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


Re: [WiX-users] DTF - install, rollback and uninstall

2009-02-20 Thread Neil Sleightholm
Thanks for the explanation.
 
Neil
 
Neil Sleightholm
X2 Systems Limited
n...@x2systems.com  
 



From: Richard [mailto:legal...@xmission.com]
Sent: Thu 19/02/2009 23:52
To: wix-users@lists.sourceforge.net
Subject: Re: [WiX-users] DTF - install, rollback and uninstall




In article <888080.51646...@web36603.mail.mud.yahoo.com>,
Christopher Painter   writes:

>[...] in order to facilitate your snarky comment:

Still no life, I see.  For several years now, all you've done is
respond to what I've posted here and in newsgroups with snarky comments.
Wouldn't it be easier for you if you just ignored me?  I won't mind.

But back to the issue at hand.  If you're already using REMOVE in the
condition for the *deferred* CA, then you don't need to evaluate
REMOVE in an immediate CA in order to set it in the deferred CA's
custom action data property.  That's the whole point of why I'm saying
using the custom action data property for this purpose is overkill.

The original question was:

From: "Neil Sleightholm" 

> I a DTF authored custom action how can you tell the mode it is running
> in, e.g. install, rollback or uninstall?

You don't need to go setting custom action data properties for a CA in
order to conditionalize it for uninstall.  Pushing the REMOVE property
into the CAData for that CA is overkill when the CA mechanism itself
already provides a mechanism for conditionalizing custom actions and
executing the right one under the right conditions.

Now that might make you think "but wait! I'll need to duplicate code
in order to have different CAs for the different conditions and
duplicating code is bad!", but this isn't true.  Just factor the
common portions out in your CA implementation instead of trying to jam
a single CA into doing all the work.  There's no difference in your
code between doing (pseudoC#code)

void mySingleCA()
{
if (immediate)
{
doImmediateStuff();
}
else if (deferred)
{
if (install)
{
doInstallStuff();
}
else if (uninstall)
{
doUninstallStuff();
}
}
else if (commit)
{
doCommitStuff();
}
else if (rollback)
{
doRollbackStuff();
}
}

compared to:

void myImmediateCA()
{
doImmediateStuff();
}

void myInstallCA()
{
doInstallStuff();
}

void myUninstallCA()
{
doUninstallStuff();
}

void myCommitCA()
{
doCommitStuff();
}

void myRollbackCA()
{
doRollbackStuff();
}

Its a design choice.  Now, the latter form has a lower cyclomatic
complexity for the implementation of the CA.  That means that each CA
code has a simpler control flow and is easier to implement and debug.
Simplicity is good.

It also means that the conditions for the CAs are declared in the
MSI and you can perform more validation on them.  For instance, you
could validate explicitly that the rollback action is sequenced before
the action it rollsback and that they both have the same condition.
I've discussed such validation of rollback actions on this list before.

If you cook the conditions into the implementation of the CA, then
this becomes more opaque and you need to write more unit tests on
your implementation in order to keep the validation intact.  You also
are separating the condition's evaluation (in the CA implementation)
from the environment that establishes the inputs to the condition (the
MSI/WiX project).  Good designs localize concerns together instead of
separating them apart.

But hey, instead of getting to the meat of the matter, its much better
to focus everyone's attention on my snarkiness.
--
"The Direct3D Graphics Pipeline" -- DirectX 9 draft available for download
  

Legalize Adulthood! 

--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registration fee with the source code: SFAD
http://p.sf.net/sfu/XcvMzF8H
___
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users


--
Open Source Business Conference (OSBC), March 24-25, 2009, San Francisco, CA
-OSBC tackles the biggest issue in open source: Open Sourcing the Enterprise
-Strategies to boost innovation and cut costs with open source participation
-Receive a $600 discount off the registrati