Blair,
Your answer was what i was looking for.  I did not realize (and had not read
anywhere) than you can treat the session object like a key/value object to
get to the session properties.
ie:
string MyString = session["MYPROPERTY"];
session["MYOTHERPROP"] = "SomeValue";

That was what i was looking for.

Thank you very much!
David 


Blair-2 wrote:
> 
> Use session Properties. They are populated from the Property table only at
> the beginning of each sequence (before your immediate CA runs) and can be
> read and written by immediate CAs.
> 
> The "[PropertyName]" syntax used in formatted fields of the database (such
> as some of the XmlConfig attributes and Condition element text) actually
> read session properties, not the Property table, so using those properties
> should be what you need. Remember to make your properties set in the UI
> sequence public and secure to be consumed in the execute sequence, because
> public secure property values will override the Property table values when
> the execute sequence starts.
> 
> -----Original Message-----
> From: David Drake (Excell Data Corporation)
> [mailto:a-ddr...@microsoft.com] 
> Sent: Thursday, November 12, 2009 8:22 AM
> To: wix-users@lists.sourceforge.net
> Subject: [WiX-users] Passing data into and out of a Custom Action
> 
> I am attempting to pass information in and out of a C# Custom Action, and
> am
> having a hell of a time with it.
> 
> The problem I am attempting to solve is this:
> There is a system XML configuration file on my target system.  The path to
> the file is always known.  I need to look into this file and determine
> whether or not a specific element/attribute exists.  If it does exist, I
> need to recover its value and pass it back into the installer for later
> use.
> If it does not exist, I need to return some sort of indication so that I
> write it using an util:XmlConfig action.  The actual XML manipulations are
> the easy part.  The problematic is passing the information in and out of
> the
> CA.
> 
> I have found that if I use a Deferred custom action, I can take a value
> entered in via the UI (file path, Xpath statement, etc) and use it in my
> CA
> without issue.  I have not been able to pass anything back to the
> installer
> though (whether or not the element exists).
> 
> I have also found that if I use an immediate action, I then have access to
> the session object, which includes the Database object.  Unfortunately,
> the
> Database object only includes what is in the database at the beginning of
> the install, and not what may have been modified during the UI Sequence. 
> I
> have used a MessageBox within the CA to show me what value lies in the
> property when the CA executes, and extra UI Dialogs to examine the
> property
> after it has been modified.  I am able to modify the property via the UI
> and
> have it visible to the later UI Dialogs.  However, when I examine the
> property via the Database object in the CA, it always contains the default
> value, even if I pass something else in via the command line.
> 
> The reason for using the CA in this case is because Wix does not have any
> ability to read files and react to the information found therein.
> 
> Is there any way to accomplish my goal here in an elegant and reusable
> way?
> I wish it was as easy as creating some kind of parameterized call to a dll
> with some kind of expected return value that would show up in some
> property...
> 
> If code samples of what I've done so far are needed, I can supply that.
> 
> Thanks,
> David
> ----------------------------------------------------------------------------
> --
> Let Crystal Reports handle the reporting - Free Crystal Reports 2008
> 30-Day 
> trial. Simplify your report design, integration and deployment - and focus
> on 
> what you do best, core application coding. Discover what's new with
> Crystal Reports now.  http://p.sf.net/sfu/bobj-july
> _______________________________________________
> WiX-users mailing list
> WiX-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/wix-users
> 
> 
> ------------------------------------------------------------------------------
> Let Crystal Reports handle the reporting - Free Crystal Reports 2008
> 30-Day 
> trial. Simplify your report design, integration and deployment - and focus
> on 
> what you do best, core application coding. Discover what's new with
> Crystal Reports now.  http://p.sf.net/sfu/bobj-july
> _______________________________________________
> WiX-users mailing list
> WiX-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/wix-users
> 
> 

-- 
View this message in context: 
http://n2.nabble.com/Passing-data-into-and-out-of-a-Custom-Action-tp3993905p3995078.html
Sent from the wix-users mailing list archive at Nabble.com.

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

Reply via email to