Board index » cppbuilder » Can CodeGuard DLL Be Linked Into Exe?
Randall Parker
![]() CBuilder Developer |
Randall Parker
![]() CBuilder Developer |
Can CodeGuard DLL Be Linked Into Exe?2004-02-04 01:48:49 PM cppbuilder50 Can the dll for CodeGuard be linked right into the exe so that the CodeGuard code is part of the exe file? If so, how? Can one just add it to the Project Manager or does one need to generate some sort of lib file to add to the Project Manager? |
Andrue Cope
![]() CBuilder Developer |
2004-02-04 05:07:45 PM
Re:Can CodeGuard DLL Be Linked Into Exe?
On Tue, 03 Feb 2004 21:48:49 -0800, Randall Parker wrote:
QuoteCan the dll for CodeGuard be linked right into the exe so that the CodeGuard code is It has a bad impact on performance and increases memory usage to the point where we've had programs fall over because of the CG overhead. If you're not confident enough about your code to release it without Code Guard monitoring it perhaps you shouldn't be releasing it at all? -- Andrue Cope [Bicester UK] |
Randall Parker
![]() CBuilder Developer |
2004-02-05 03:13:44 AM
Re:Can CodeGuard DLL Be Linked Into Exe?
Andrue,
I am looking for a watch to capture call trees when an exception is hit. I figure CodeGuard can show the call tree to a run-time access violation. As for an app not being ready for release: it is not possible to test all usage scenarios. The apps are too complicated for that. Plus, the crashes could come in third party or Borland libraries. Andrue Cope wrote: QuoteI don't think so. Why would you want to do that? Code Guard is a useful {smallsort} |
Pavel Vozenilek
![]() CBuilder Developer |
2004-02-05 04:57:52 AM
Re:Can CodeGuard DLL Be Linked Into Exe?
"Randall Parker" < XXXX@XXXXX.COM >wrote
Quote
/Pavel |
Andrue Cope
![]() CBuilder Developer |
2004-02-05 05:40:46 PM
Re:Can CodeGuard DLL Be Linked Into Exe?
On Wed, 04 Feb 2004 11:13:44 -0800, Randall Parker wrote:
QuoteAs for an app not being ready for release: it is not possible to test all usage procedure is to develop in conjunction with CG. Nothing goes to QA without having passed CG testing but nothing goes to QA with CG linked in. Actually as noted later the boor bozos in-house use code that hasn't eve been to QA. We call them beta testers. Or victims :) Our software is used in data recovery - that means regularly dealing with corrupt and downright misleading data. We get the occasional AV but they are rare enough to prompt comment and consternation when they happen. I'm curious what advantage you get from shipping with CG that outweighs the disadvantages. Perhaps you've found something that we haven't - we're always interested in improving our development techniques. Crash protection? Not that we're aware of. CG only warns of an event it doesn't stop the event happening. Assistance in determining the cause of the crash? Not really. You can ship debug information to improve the log file but that can be reconstructed back at your desk anyway as long as you can reconstruct the original build. If you can't reconstruct the original build the CG log file is useless. Disadvantages: stability. We have learnt never to use CG to monitor long complex processes. A process that will run for a week without CG and give no indication of problems will often fall over after a day if CG is linked in. Performance. This is a total turn-off to using CG in release code. Our processes tend to be non-user intensive. You start them and they run as fast as the hardware allows. CG is a massive performance hit. Processes typically run ten to twenty times slower. For in-house we just re-run the process with the latest development version. That either lets us debug the problem or verifies it as fixed. We do that because results are what count in-house and we don't mind using code that is hot off the press :) For external customers we don't do that (we prefer to update them only occasionally and not subject them to bleeding-edge code). What we do there is maintain a separate source stream on an isolated machine. We can then locate the problem and generate a patch. That machine /does/ run CG and to my knowledge we've never had a situation where the fact it was running CG meant it behaved differently to the the release code. But I guess it's horses for courses. It doesn't look like Borland intended people to release with CG if they didn't provide a LIB but I'm pretty sure the license allows you to do that. -- Andrue Cope [Bicester UK] |
Colin
![]() CBuilder Developer |
2004-05-12 03:25:49 PM
Re:Can CodeGuard DLL Be Linked Into Exe?
Pavel,
I'd like to try ExceptionMagic in my CB5 app. I've downloaded it but in the absence of an example of it's (CPP) use, I'm a little stuck at trying to include it and get it working. Any chance of a few lines of example code (for example, how to instantiate the hook in the main project file)??? TIA. Colin Pavel Vozenilek wrote: Quote
|