[wix-users] using DTF, who to deserialize CustomActionData created with WcaWriteStringToCaData (and related)

Phill Hogland phill.hogland at rimage.com
Tue Apr 26 13:33:23 PDT 2016


I have not had any problem attaching to a C++ CA (although I did not try with this test scenario).  I am having a problem attaching to a DTF C# deferred CA after MMsiBreak has fired and I attached to the indicated process ID.  When the dialog is closed the setup runs to completion but the debugger does not do anything.

________________________________________
From: wix-users <wix-users-bounces at lists.wixtoolset.org> on behalf of John Cooper <JoCooper at jackhenry.com>
Sent: Tuesday, April 26, 2016 3:16:14 PM
To: WiX Toolset Users Mailing List
Subject: Re: [wix-users] using DTF, who to deserialize CustomActionData created with WcaWriteStringToCaData (and related)

Don't know about the serialization issue.

But on getting the debugger running in C++, how about?

while (!IsDebuggerPresent()); DebugBreak();

--
John Merryweather Cooper
Senior Software Engineer | Integration Development Group | Enterprise Notification Service
Jack Henry & Associates, Inc.® | Lenexa, KS  66214 | Ext:  431050 |JoCooper at jackhenry.com




-----Original Message-----
From: wix-users [mailto:wix-users-bounces at lists.wixtoolset.org] On Behalf Of Phill Hogland
Sent: Tuesday, April 26, 2016 12:32 PM
To: WiX Toolset Users Mailing List <wix-users at lists.wixtoolset.org>
Subject: [wix-users] using DTF, who to deserialize CustomActionData created with WcaWriteStringToCaData (and related)

The e-mail below is from an external source.  Please do not open attachments or click links from an unknown or suspicious origin.

I have a WixExtension where I created a C++ immediate CA to read my custom table data and schedule my deferred CA.   Because I need to make use of a .Net API, I created my first DTF C# deferred CA (rather than a C++ CA using WcaUtil as I have done in the past).  However all of the DTF examples that I have found deserialize CustomActionData into a Dictionary<string,string> of paired strings keyname1=value1 keyname2=value2


I prefer to use the WcaUtil functions WcaWriteStringToCaData and WcaWriteIntegerToCaData in the immediate CA.  I am looking for advice on how to desterilize this in the C# deferred CA.


On a related issue, while I defined MMsiBreak on the remote VM with VS Remote Debug tools installed, when it prompts at the MMsiBreak point, it always provides a process ID that is related to a process named rundll32.exe, and even after I attach to that process and close the dialog the debugger does not actually attach to the code and hit any of the defined breakpoints.  I have checked to make sure that DEBUG is defined and symbols are available.  In C++ we had to modify our approach to debugging because of the 3.10.2 introduction of the clean room.  Is that the issue that I am hitting here with MMsiBreak and is there any advice on how to attach the debugger.  I also tried to add System.Diagnostics.Debugger.Launch() and System.Diagnostics.Debugger.Break() to the code but they don't seem to have an impact either.


Any advice would be appreciated!

Phill

____________________________________________________________________
WiX Toolset Users Mailing List provided by FireGiant http://www.firegiant.com/

NOTICE: This electronic mail message and any files transmitted with it are intended
exclusively for the individual or entity to which it is addressed. The message,
together with any attachment, may contain confidential and/or privileged information.
Any unauthorized review, use, printing, saving, copying, disclosure or distribution
is strictly prohibited. If you have received this message in error, please
immediately advise the sender by reply email and delete all copies.


____________________________________________________________________
WiX Toolset Users Mailing List provided by FireGiant http://www.firegiant.com/


More information about the wix-users mailing list