Hi all, I need to delete a specific file (created by our product) after uninstalling the product. For that I'm using the Quiet Execution CustomAction like:
<Property Id="QtExecDeferred" Value='"[SystemFolder]\Cmd.exe" /C del /Q "[INSTALLLOCATION]\momo.txt"'/> <CustomAction Id="QtExecDeferred" BinaryKey="WixCA" DllEntry="CAQuietExec" Execute="deferred" Return="ignore" Impersonate="no"/> <InstallExecuteSequence> <Custom Action="QtExecDeferred" After="RemoveExistingProducts"/> </InstallExecuteSequence> When I'm building this I get the following 2 warnings: warning CNDL1077: The 'QtExecDeferred' Property contains '[SystemFolder]' in its value which is an illegal reference to another property. If this value is a string literal, not a property reference, please ignore this warning. To set a property with the value of another property, use a CustomAction with Property and Value attributes. warning CNDL1077: The 'QtExecDeferred' Property contains '[APPLICATIONFOLDER]' in its value which is an illegal reference to another property. If this value is a string literal, not a property reference, please ignore this warning. To set a property with the value of another property, use a CustomAction with Property and Value attributes. By looking into the log file, I see that the execution failed, with "file not found": MSI (s) (4C:28) [14:26:46:842]: Executing op: CustomActionSchedule(Action=QtExecDeferred,ActionType=3137,Source=BinaryData,Target=CAQuietExec,CustomActionData="[SystemFolder]\Cmd.exe" /C del /Q "[INSTALLLOCATION]\momo.txt") MSI (s) (4C:80) [14:26:46:853]: Invoking remote custom action. DLL: C:\Windows\Installer\MSI8DF2.tmp, Entrypoint: CAQuietExec MSI (s) (4C:80) [14:26:46:853]: Generating random cookie. MSI (s) (4C:80) [14:26:46:871]: Created Custom Action Server with PID 7996 (0x1F3C). MSI (s) (4C:4C) [14:26:46:973]: Running as a service. MSI (s) (4C:4C) [14:26:46:976]: Hello, I'm your 32bit Elevated custom action server. CAQuietExec: Error 0x80070002: Command failed to execute. CAQuietExec: Error 0x80070002: CAQuietExec Failed I assume the problem is that I'm using [SystemFolder] and [INSTALLLOCATION] in a deferred CustomAction. By searching the internet I found somebody saying: "> You can't access properties directly from a defered custom action. You > have to use another custom action that sets a property matching the name of > your action." The problem is that I don't know how to do that? Can someone pls, taking in account the above lines of code, tell me how and what do I need to change to follow this instruction? Thank you, MeCoco ------------------------------------------------------------------------------ Increase Visibility of Your 3D Game App & Earn a Chance To Win $500! Tap into the largest installed PC base & get more eyes on your game by optimizing for Intel(R) Graphics Technology. Get started today with the Intel(R) Software Partner Program. Five $500 cash prizes are up for grabs. http://p.sf.net/sfu/intelisp-dev2dev _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users