Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Custom action is not being executed

Tags:

wix

<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
    <Fragment>
      <!-- This is my custom UI where I need to take the user name and password details and perform some checks. If they are empty i need to show message box-->
    <UI>
      <Property Id ="PROP_USER_NAME"  Hidden="yes"/>
      <Property Id="PROP_PASSWORD"  Hidden="yes" />
      <Property Id="PROP_RESULTANT"  Value="1"  />     

      <Dialog Id="UserCredentialDlg" Width="370" Height="270" Title="CQS software" NoMinimize="no">

        <Control Type="Line" Id="TopLine" Width="370" Height="17" X ="0" Y="40"/>
        <Control Type="Line" Id="BottomLine" Width="370" Height="17" X="0" Y="230" />
        <Control Type="PushButton" Id="btnBack" Width="56" Height="17" X="146" Y="244" Text="Back">
          <Publish Event="NewDialog" Value="LicenseDlg"/>
        </Control>
        <Control Type="PushButton" Id="btnNext" Width="56" Height="17" X="221" Y="244" Text="Next" Default="yes">
          <Publish Event="DoAction" Value="UserNameAndPasswordCheck" Order="1"/>
          <Publish Event="NewDialog" Value="WelcomeDlg" Order="2"/>          
        </Control>
        <Control Type="PushButton" Id="btnCancel" Width="56" Height="17" X="296" Y="244" Text="Cancel" Cancel="yes">
          <Publish Event="EndDialog" Value="Exit" />
        </Control>
        <Control Type="Text" Id="lblUserName" Width="50" Height="17" X="79" Y="94" Text="UserName" Transparent="yes"/>
        <Control Type="Text" Id="lblPassword" Width="50" Height="17" X="79" Y="124" Text="Password" Transparent="yes"/>
        <Control Type="Edit" Id="txtbxUserName" Width="150" Height="17" X="131" Y="94"  Property="PROP_USER_NAME" />
        <Control Type="Edit" Id="txtbxpassword" Width="150" Height="17" X="131" Y="124"  Property="PROP_PASSWORD" Password="yes" />
      </Dialog> 
    </UI>
    </Fragment>
  <Fragment>
     <!-- This section is related to custom action-->
    <Binary Id="CABinary" SourceFile=".\CustomActionsFolder\CustomActions.CA.dll" />
    <CustomAction Id="UserNameAndPasswordCheck" BinaryKey="CABinary"  DllEntry="CheckUserNameAndPassword" Execute="immediate"/>
  </Fragment>
</Wix>

CheckUserNameAndPassword is the method name.

My custom action is not executing at all. I have a message box in my custom action; It is not at all showing and also I am logging the action start and end. In log file also it is not showing anything related to my custom action.

What was my mistake?

like image 755
Tulasirao Avatar asked Dec 12 '25 21:12

Tulasirao


1 Answers

Did you reference it in your InstallExecuteSequence?

<Binary Id="CABinary" SourceFile=".\CustomActionsFolder\CustomActions.CA.dll" />
<CustomAction Id="UserNameAndPasswordCheck" BinaryKey="CABinary"  DllEntry="CheckUserNameAndPassword" Execute="immediate"/>

<InstallExecuteSequence>
    <Custom Action="UserNameAndPasswordCheck" After="InstallFinalize"/>
</InstallExecuteSequence>

Otherwise it will indeed not be run. Hope this helps

like image 182
Stijn De Winter Avatar answered Dec 16 '25 22:12

Stijn De Winter



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!