Search code examples
wixcustom-action

Create file in installation folder using WiX custom action


I try to create a installer that has the need to create a file in the programme folder after Installation. For doing so, I have created a custom action, but I now have the following problem:

In order to write the file, I need to know the installation directory from session["INSTALLDIR"], which is only available if the action is executed "immediate".

However, if i run "immediate" after "install files", the target directory does not yet exist. If I run "deferred", it exists, but i cannot access session["INSTALLDIR"].

If I run "immediate" after "InstallFinalize", I can get the variable and the directory exists, but I am not elevated and hence not allowed to write the file.

What is the correct combination for writing a file to the installation directory?


Solution

  • You need to use CustomActionData to access property values from a deferred CA. You need something like this

    or

    another answer