You'll want to set a property that can be checked in a condition.

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

> -----Original Message-----
> From: Kevin Burton [mailto:kev...@buyseasons.com]
> Sent: Thursday, March 10, 2011 6:05 AM
> To: General discussion for Windows Installer XML toolset.
> Subject: Re: [WiX-users] C# Custom Action questions
> 
> How does the custom action indicate that the credentials are incorrect?
> 
> Kevin Burton
> Senior Software Engineer
> BUYSEASONS
> 262-901-2000 Office
> 262-901-2312 Fax
> kev...@buyseasons.com
> 
> -----Original Message-----
> From: Simon Dahlbacka [mailto:simon.dahlba...@gmail.com]
> Sent: Wednesday, March 09, 2011 11:21 PM
> To: General discussion for Windows Installer XML toolset.
> Subject: Re: [WiX-users] C# Custom Action questions
> 
> You shouldn't return failure if the credentials are incorrect, if you do so 
> you
> will get this error.
> 
> "been there, done that... "
> On Mar 10, 2011 6:34 AM, "Kevin Burton" <kev...@buyseasons.com> wrote:
> > I read that. Which of the four rules is this violating?
> >
> > I made the warning go away by making the C# CA 'immediate' thus I
> > don't
> have to have another custom action to remember the property. So I have
> >
> > <CustomAction Id="CA_CheckCredentials"
> > Return="check"
> > Execute="immediate"
> > BinaryKey="CustomActionsDLL"
> > DllEntry="CheckCredentials"/>
> >
> > And the schedule
> >
> > <InstallExecuteSequence>
> > <Custom Action="CA_CheckCredentials" After="InstallInitialize" />
> > </InstallExecuteSequence>
> >
> > But in the verbose log I get:
> >
> > MSI (s) (B8:9C) [22:04:26:415]: Note: 1: 1723 2: CA_CheckCredentials 3:
> CheckCredentials 4: D:\WINDOWS\Installer\MSI410.tmp
> > Action start 22:04:26: CA_CheckCredentials.
> > MSI (s) (B8:9C) [22:04:26:415]: Product: Bsi WebServices -- Error 1723.
> There is a problem with this Windows Installer package. A DLL required for
> this install to complete could not be run. Contact your support personnel or
> package vendor. Action CA_CheckCredentials, entry: CheckCredentials,
> library: D:\WINDOWS\Installer\MSI410.tmp
> >
> > Error 1723. There is a problem with this Windows Installer package. A
> > DLL
> required for this install to complete could not be run. Contact your support
> personnel or package vendor. Action CA_CheckCredentials, entry:
> CheckCredentials, library: D:\WINDOWS\Installer\MSI410.tmp
> >
> > The error says that the DLL cannot be run. Why? I believe I have
> > followed
> the instructions for writing a managed CA to the tee (though there seems to
> be some disagreement between the online tutorial
> http://www.tramontana.co.hu/wix/ and this book).
> >
> >
> > -----Original Message-----
> > From: Castro, Edwin G. (Hillsboro) [mailto:edwin.cas...@fiserv.com]
> > Sent: Wednesday, March 09, 2011 5:26 PM
> > To: General discussion for Windows Installer XML toolset.
> > Subject: Re: [WiX-users] C# Custom Action questions
> >
> > ICE63 - http://msdn.microsoft.com/en-us/library/aa369008.aspx
> >
> > Edwin G. Castro
> > Software Developer - Staff
> > Electronic Banking Services
> > Fiserv
> > Office: 503-746-0643
> > Fax: 503-617-0291
> > www.fiserv.com
> > P Please consider the environment before printing this e-mail
> >
> >
> >> -----Original Message-----
> >> From: Kevin Burton [mailto:kev...@buyseasons.com]
> >> Sent: Wednesday, March 09, 2011 2:15 PM
> >> To: General discussion for Windows Installer XML toolset.
> >> Subject: Re: [WiX-users] C# Custom Action questions
> >>
> >> I think I have solved this problem. The CA was scheduled in the
> >> InstallExecuteSequence and was marked as 'deferred' so I created the
> >> following 'Custom Data'.
> >>
> >> <CustomAction Id="SetProperty" Property="CA_CheckCredentials"
> >> Value="[SERVICEUSER],[SERVICEPASSWORD]" /> <CustomAction
> >> Id="CA_CheckCredentials"
> >> Return="check"
> >> Execute="deferred"
> >> BinaryKey="CustomActionsDLL"
> >> DllEntry="CheckCredentials"/>
> >>
> >> And scheduled it like (I am trying to follow the instructions on page
> >> 133 of
> >> 'WiX: A Developer's Guide to Windows Installer XML' by Nick Ramirez)
> >>
> >> <InstallExecuteSequence>
> >> <Custom Action="SetProperty" Before="CA_CheckCredentials" />
> <Custom
> >> Action="CA_CheckCredentials" After="InstallInitialize" />
> >> </InstallExecuteSequence>
> >>
> >> Now I get the ICE warning:
> >>
> >> warning LGHT1076: ICE63: Some action falls between InstallInitialize
> >> and RemoveExistingProducts.
> >>
> >> Is this a "bad" warning? I don't completely understand why this
> >> scheduling is bad. I would like to know that the credentials are bad
> >> *before* the existing products are removed.
> >>
> >> If I look at the .msi generated with Orca I see that in the
> >> InstallExecuteSequence table
> >>
> >> InstallInitialize 1500
> >> SetProperty 1501
> >> CA_CheckCredentials 1502
> >> RemoveExistingProducts 1503
> >>
> >> This seems like a valid sequence to me but I am obviously missing
> >> something as the warning is there for a purpose.
> >>
> >> -----Original Message-----
> >> From: Christopher Painter [mailto:chr...@deploymentengineering.com]
> >> Sent: Wednesday, March 09, 2011 3:30 PM
> >> To: General discussion for Windows Installer XML toolset.
> >> Subject: Re: [WiX-users] C# Custom Action questions
> >>
> >> If I had to guess you calling this CA as a ControlEvent off a Dialog
> >> / Control in your UI sequence.  Am I correct?  If so, it's a known issue
> >> that Msi lacks the ability to process messages in this scenario.   The
> >> workaround is to set a dummy property to see a "PROPERTY CHANGED"
> >> message in the log file where the value is the data you are trying to
> log.
> >>
> >> Chris
> >>
> >> ---
> >> 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
> >>
> >>
> >>
> >> ----- Original Message ----
> >> From: Kevin Burton <kev...@buyseasons.com>
> >> To: General discussion for Windows Installer XML toolset.
> >> <wix-users@lists.sourceforge.net>
> >> Sent: Wed, March 9, 2011 3:24:17 PM
> >> Subject: [WiX-users] C# Custom Action questions
> >>
> >>
> >> I have a very simple C# Custom Action that is supposed to verify
> credentials:
> >>
> >> using Microsoft.Deployment.WindowsInstaller;
> >>
> >> namespace BuySeasons.BsiServices.Install {
> >>     public class CustomActions
> >>     {
> >>         [CustomAction]
> >>         public static ActionResult CheckCredentials(Session session)
> >>         {
> >>             session.Log(string.Format("Begin CheckCredentials -
> >> {0}/{1}", session["SERVICEUSER"], session["SERVICEPASSWORD"]));
> >>             bool valid = false;
> >>             using (PrincipalContext context = new
> >> PrincipalContext(ContextType.Domain, "ASGARD"))
> >>             {
> >>                 valid =
> >> context.ValidateCredentials(session["SERVICEUSER"],
> >> session["SERVICEPASSWORD"]);
> >>             }
> >>             if(valid)
> >>                 return ActionResult.Success;
> >>             else
> >>                 return ActionResult.Failure;
> >>         }
> >>     }
> >> }
> >> It is included in the WiX Product as
> >>
> >>     <Binary Id="CustomActionsDLL"
> >>
> >> SourceFile="C:\Projects\....\bin\$(var.Configuration)\BrainCustomActi
> >> o
> >> ns.C
> >> A.dll"
> >> />
> >>
> >>     <CustomAction Id="CA_CheckCredentials"
> >>                   Return="check"
> >>                   Execute="deferred"
> >>                   BinaryKey="CustomActionsDLL"
> >>                   DllEntry="CheckCredentials"/>
> >>
> >> And scheduled as:
> >>
> >>     <InstallExecuteSequence>
> >>       <Custom Action="CA_CheckCredentials" After="InstallInitialize"
> >> />
> >>     </InstallExecuteSequence>
> >>
> >> This all compiles to a .msi without error. I can see
> >> CA_CheckCredentials in Orca just where I want it. But it doesn't seem
> >> to be called. I look at the verbose log and the closest reference I
> >> see
> is:
> >>
> >> Action start 14:56:05: InstallInitialize.
> >> MSI (s) (B0:4C) [14:56:06:052]: Doing action: CA_CheckCredentials MSI
> >> (s)
> >> (B0:4C) [14:56:06:052]: Note: 1: 2205 2:  3: ActionText
> >>
> >> I don't see the string 'Begin CheckCredentials' as in the code above.
> >> What do you think I have done wrong?
> >>
> >> ---------------------------------------------------------------------
> >> -
> >> --------
> >> Colocation vs. Managed Hosting
> >> A question and answer guide to determining the best fit for your
> >> organization - today and in the future.
> >> http://p.sf.net/sfu/internap-sfd2d
> >> _______________________________________________
> >> WiX-users mailing list
> >> WiX-users@lists.sourceforge.net
> >> https://lists.sourceforge.net/lists/listinfo/wix-users
> >>
> >>
> >>
> >>
> >>
> >> ---------------------------------------------------------------------
> >> -
> >> --------
> >> Colocation vs. Managed Hosting
> >> A question and answer guide to determining the best fit for your
> >> organization - today and in the future.
> >> http://p.sf.net/sfu/internap-sfd2d
> >> _______________________________________________
> >> WiX-users mailing list
> >> WiX-users@lists.sourceforge.net
> >> https://lists.sourceforge.net/lists/listinfo/wix-users
> >>
> >> ---------------------------------------------------------------------
> >> -
> >> --------
> >> Colocation vs. Managed Hosting
> >> A question and answer guide to determining the best fit for your
> >> organization - today and in the future.
> >> http://p.sf.net/sfu/internap-sfd2d
> >> _______________________________________________
> >> WiX-users mailing list
> >> WiX-users@lists.sourceforge.net
> >> https://lists.sourceforge.net/lists/listinfo/wix-users
> >
> ------------------------------------------------------------------------------
> > Colocation vs. Managed Hosting
> > A question and answer guide to determining the best fit for your
> organization - today and in the future.
> > http://p.sf.net/sfu/internap-sfd2d
> > _______________________________________________
> > WiX-users mailing list
> > WiX-users@lists.sourceforge.net
> > https://lists.sourceforge.net/lists/listinfo/wix-users
> >
> ------------------------------------------------------------------------------
> > Colocation vs. Managed Hosting
> > A question and answer guide to determining the best fit for your
> > organization - today and in the future.
> > http://p.sf.net/sfu/internap-sfd2d
> > _______________________________________________
> > WiX-users mailing list
> > WiX-users@lists.sourceforge.net
> > https://lists.sourceforge.net/lists/listinfo/wix-users
> ------------------------------------------------------------------------------
> Colocation vs. Managed Hosting
> A question and answer guide to determining the best fit for your
> organization - today and in the future.
> http://p.sf.net/sfu/internap-sfd2d
> _______________________________________________
> WiX-users mailing list
> WiX-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/wix-users
> 
> ------------------------------------------------------------------------------
> Colocation vs. Managed Hosting
> A question and answer guide to determining the best fit for your
> organization - today and in the future.
> http://p.sf.net/sfu/internap-sfd2d
> _______________________________________________
> WiX-users mailing list
> WiX-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/wix-users
------------------------------------------------------------------------------
Colocation vs. Managed Hosting
A question and answer guide to determining the best fit
for your organization - today and in the future.
http://p.sf.net/sfu/internap-sfd2d
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to