I wrote a simple function to test custom actions. I simply unzip a file to the directory.
The custom action is executed correct if I execute the msi with
msiexec /i MyProgramm.msi /l*v thelog.txt
But if I simply execute the msi with double click to install, the custom action is not executed
<Binary Id="CustomActions" SourceFile="$(var.CustomAction1.TargetDir)\$(var.CustomAction1.TargetName).CA.dll" />
<CustomAction Id="UnzipFiles" BinaryKey="CustomActions" DllEntry="CustomAction1" Execute='immediate' Impersonate='no' Return="check"/>
<InstallExecuteSequence>
<Custom Action="UnzipFiles" After="InstallFinalize"></Custom>
</InstallExecuteSequence>
This is using WiX 3.