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
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)\BrainCustomActions.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

Reply via email to