Hi, I have built a managed custom action to check if a UNC path exists. I'm not installing to this path. This path is simply being set as the value of a .config file setting during the install. I just want to verify that it is a valid path. The custom action is defined as follows:
[CustomAction] public static ActionResult DirectoryExists(Session session) { CustomActionService service = new CustomActionService(); return service.DirectoryExists(session); } I created the custom action project using the Visual Studio template for a C# custom action. This custom action expects a "_DirectoryExists_Path" property to contain the path to check. And it populates a "_DirectoryExists_Result" with a "yes" (true) or "no" (false) result. The custom action is just calling System.IO.Directory.Exists() to do the check. I have the custom action defined in the installer like so: <CustomAction Id="CheckArchiveDirectory" BinaryKey="AppDevInstallCustomActions.dll" DllEntry="DirectoryExists" Execute="immediate" Return="ignore" Impersonate="yes" /> And to be called in the UI, like so: <Publish Dialog="ServiceOptionsDlg" Control="Back" Event="NewDialog" Value="ServiceCredentialsDlg">1</Publish> <Publish Dialog="ServiceOptionsDlg" Control="Next" Property="_DirectoryExists_Path" Value="[ARCHIVE_PATH]" Order="1">1</Publish> <Publish Dialog="ServiceOptionsDlg" Control="Next" Event="DoAction" Value="CheckArchiveDirectory" Order="2">1</Publish> <Publish Dialog="ServiceOptionsDlg" Control="Next" Property="VErr_Text" Value="The archive path specified does not exist." Order="3"><![CDATA[_DirectoryExists_Result = "no"]]></Publish> <Publish Dialog="ServiceOptionsDlg" Control="Next" Event="SpawnDialog" Value="ValidationErrDlg" Order="4"><![CDATA[_DirectoryExists_Result = "no"]]></Publish> <Publish Dialog="ServiceOptionsDlg" Control="Next" Event="NewDialog" Value="VerifyReadyDlg" Order="5"><![CDATA[_DirectoryExists_Result = "yes"]]></Publish> When run to the installer and click the "Next" button, I get the spinning blue wheel of death. I've tried adding a "System.Diagnostics.Debugger.Launch();" line to the above code but the debugger is never launched. If I run a verbose log, it just ends at the line before the custom action call. Here's the last 5 lines: Action 10:41:55: ServiceOptionsDlg. Dialog created MSI (c) (20:44) [10:41:57:524]: Doing action: CheckArchiveDirectory Action 10:41:57: CheckArchiveDirectory. Action start 10:41:57: CheckArchiveDirectory. MSI (c) (20:6C) [10:41:57:541]: Invoking remote custom action. DLL: I'm stumped. Any ideas or tips for debugging this would be appreciated. I'm also encrypting (and decrypting) my .config files using this same managed custom action dll, so I know the DLL is partially working. These custom actions are scheduled in the InstallExecuteSequence after "InstallFinalize", however. Thanks, Chris McKinnon The information contained in this e-mail is confidential and may contain privileged information. It is intended only for the person or persons named above. If you are not an intended recipient of this e-mail please be advised that any distribution or copying of this e-mail is prohibited. If you have received this e-mail in error, please notify us by return e-mail and delete all copies of the e-mail and any attachments. ------------------------------------------------------------------------------ Download new Adobe(R) Flash(R) Builder(TM) 4 The new Adobe(R) Flex(R) 4 and Flash(R) Builder(TM) 4 (formerly Flex(R) Builder(TM)) enable the development of rich applications that run across multiple browsers and platforms. Download your free trials today! http://p.sf.net/sfu/adobe-dev2dev _______________________________________________ WiX-users mailing list WiX-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wix-users