Crashing program using Acrobat OCX
Posted on 2002-03-27
I have become quite reliant on using the Adobe Acrobat OCX component in a lot of the software I write for internal use in the company I work for.
Basically the reason behind this is that I am quite fluent in postscript but the majority of the printers on site are not postscript compatible. So the route I take is:-
 Create postscript file
 Call ghostscript (free distiller!) to distill the file to a PDF
 Use the Adobe Acrobat OCX to display the file and then print to any of the printers on our network.
But I seem to have a problem. Obviously, while developing, I'm running the software multiple times in quick sucession to debug the reports (it saves a lot of paper!!). But after running the software a couple of dozen times I start to get errors that make it look like a memory leak or something similar : Icons start to look corrupt, strange error messages, other software stops working, low system resource warnings.
I have tried both version 4 and 5 of Acrobat and also tried it on a 'fresh' install of Delphi on a different machine. But the same problem exhibits itself.
The first piece of software I wrote was quite complex and I thought that maybe it was that that was causing a problem. But since then I have done a few things which point to the OCX. Firstly, I stripped out everything expect the PDF display part and the error was still apparent. I then tried removing the PDF display part from another piece of software, viewing them in the external standalone Acrobat Reader instead, and the problem disappeared.
But I've noticed a few other people are using the OCX and nobody is complaining about this problem. So I'm wondering what I'm doing wrong or if there is anything I can do that will cure the problem??
My main problem is that the latest piece of software will be used over and over again when in full use and I don't want it crashing the users computer all the time. I've 'got away with it' until now because the other software has only had to be run once or twice daily.
BTW I'm using Delphi V6 but had the same problem in V5.
Hope someone can help,