Board logo

Subject: CnDebug [Print This Page]

Author: tgoncuoglu    Time: 2012-9-6 21:00     Subject: CnDebug


My problem is with CnDebug unit, but, first of all, sorry if this is redundant. I couldn't check if this has already been discussed since forums search doesn't seem to work, neither it was included in FAQ.

I tried hard to make CnDebugger work for a while, with zero success, trying both Log and Trace methods with and without all variations of NDEBUG and DEBUG conditionals, but nothing seemed to work. I was starting CnDebugViewer as Administrator as stated in documents, but that didnt help either. Then I finally found a solution: I had to start Delphi IDE as Administrator as well. Simply setting the compiled Exe to "run as admin" doesnt work becuase then Delphi cant compile / debug the application.

So, the working configuration is run both the IDE and CnDebugViewer as Administrator, to reach a global shared memory. However, that doesnt seem to be a good solution to me. Ideally, neither should require admin rights.

Somewhere in the help file it said "CnDebug uses different channels to send the message", to perhaps set some other channel. However what I found was a simpe CopyMemory in TCnDebugger.InternalOutputMsg at line 1077.

So, my problem is this: is it possible, or rather planned, to add another channel as a way of communication between CnDebug and CnDebugViewer, that does not require administrative rights ? I do have a similar project in which I use a TCP socket channel, which also gives me remote debugging capabilities. It does have its own problems(lag in network buffers mixes message sequence for instance), but is a solution nonetheless.

My system is Windows 7 64bit with Delphi 2007 (yes I know, its a bit old ide, but there is old code that needs to be ported before going higher).

Regards and thanks for the great work,

Tuncay Goncuoglu

Welcome to CnPack Forum ( Powered by Discuz! 5.0.0