Hi I still havent figured out how to solve my issue, but i have found a couple of other aspects. As it seems, the built in property: [SourceDir] is, depending at the time of exeuction, sometimes empty. In the execute sequence, if i use a immediate custom action, scheduled after InstallInitialize, the property "SourceDir" is empty (in C#: session["SourceDir"]) . The log also states that the property is deleted, however, recreated afterwards.
I start to believe that this is the reason why I have been struggling accessing the property in a deferred custom action. Is it not possible to access this property in the execute sequence? Or what would I have to do? Greetings (PS: by the way, the workaround in my prior mail does not work because the SourceDir property is not set. Sorry for precipitating) ________________________________________ Von: daniel.knoep...@noser.com [daniel.knoep...@noser.com] Gesendet: Mittwoch, 14. Juli 2010 10:11 An: wix-users@lists.sourceforge.net Betreff: Re: [WiX-users] Accessing Source directory in Deferred Custom Action (ApDataFolder etc. is working, just not SourceDir) Hi Since I haven't managed to assign the [SourceDir] value to a customAction Data Property, i tried to assign the data assign the value to a property and then assign that property to the a customAction. However, no success, the assigned property is empty. I am sure it is a simple syntax thing but i cant figure out the solution :-( Here is what i did: <Property Id="TestProp" Value="[SourceDir]" /> <SetProperty Id="TestProp" After="CostFinalize" Sequence="execute" Value="[SourceDir]" /> <InstallExecuteSequence> <Custom Action="TestCA.SetProperty" After="InstallInitialize"/> <Custom Action="TestCA" After="TestCA.SetProperty"/> </InstallExecuteSequence> <CustomAction Id="TestCA.SetProperty" Return="check" Property="TestCA" Value="TestingCAD=[TestProp];INSTALLDIR=[INSTALLDIR];AppDataFolder=[AppDataF older]"> </CustomAction> <CustomAction Id="TestCA" BinaryKey="CustomActionDll" DllEntry="TestMethod" Impersonate="no" Execute="deferred" Return="check"> </CustomAction> Still no success. :-( I have found a workaround to set a property but thats something i want to avoid at any cost: 1. Define property "DUMMYPROPERTY" 2. Set property in C# custom action: session["DUMMYPROPERTY"] = "i get assigned, jabadabadu"; 3. Assign property to custom action data (as above) So I am 100% sure that the syntax i use for the SourceDir property is wrong. It must be something simple. I am grateful for any help. Thanks ________________________________________ Von: Blair [os...@live.com] Gesendet: Dienstag, 13. Juli 2010 18:34 An: 'General discussion for Windows Installer XML toolset.' Betreff: Re: [WiX-users] Accessing Source directory in Deferred Custom Action (ApDataFolder etc. is working, just not SourceDir) In a verbose installation log, what is the resulting value of the TestCA property? -----Original Message----- From: daniel.knoep...@noser.com [mailto:daniel.knoep...@noser.com] Sent: Tuesday, July 13, 2010 8:24 AM To: wix-users@lists.sourceforge.net Subject: [WiX-users] Accessing Source directory in Deferred Custom Action (ApDataFolder etc. is working, just not SourceDir) Hi I would like to access the "SourceDir" property in a deferred custom action. While i can access other directories via the CustomAction property (see example below). The SourceDir ActionData remains empty. I must be doing something wrong. I sure it's something silly, that only a wix newby can stumble over. Any help appreciated. Thanks My sample code: <InstallExecuteSequence> <Custom Action="TestCA.SetProperty" After="InstallInitialize"/> <Custom Action="TestCA" After="TestCA.SetProperty"/> </InstallExecuteSequence> <CustomAction Id="TestCA.SetProperty" Return="check" Property="TestCA" Value="SourceDir=[SourceDir];INSTALLDIR=[INSTALLDIR];AppDataFolder=[AppDataF older]"> </CustomAction> <CustomAction Id="TestCA" BinaryKey="CustomActionDll" DllEntry="TestMethod" Impersonate="no" Execute="deferred" Return="check"> </CustomAction> In the C# code: [CustomAction] public static ActionResult TestMethod(Session session) { session.Log("CustomAction TestMethod called!"); . try{ // empty string showMe = session.CustomActionData["SourceDir"]; // working, path string showMe = session.CustomActionData["AppDataFolder"]; ---------------------------------------------------------------------------- -- This SF.net email is sponsored by Sprint What will you do first with EVO, the first 4G phone? Visit sprint.com/first -- http://p.sf.net/sfu/sprint-com-first _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users ------------------------------------------------------------------------------ This SF.net email is sponsored by Sprint What will you do first with EVO, the first 4G phone? Visit sprint.com/first -- http://p.sf.net/sfu/sprint-com-first _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users ------------------------------------------------------------------------------ This SF.net email is sponsored by Sprint What will you do first with EVO, the first 4G phone? Visit sprint.com/first -- http://p.sf.net/sfu/sprint-com-first _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users ------------------------------------------------------------------------------ This SF.net email is sponsored by Sprint What will you do first with EVO, the first 4G phone? Visit sprint.com/first -- http://p.sf.net/sfu/sprint-com-first _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users