DIAdem

cancel
Showing results for 
Search instead for 
Did you mean: 

DIAdem is amassing GDI-Objects

Hi,

I got a problem with a measuring application in DIAdem 8.1.
The application is using a DAC-Block-diagramm for the measuring process. At the end of a measuring cycle the DAC is stopped and a script saves the measured data and restarts the blockdiagramm for the next measuring cylce. The script also creates a picture, using picload/picupdate/picexport, with the name and some general data that is displayed in the block diagramm. Each time the appliaction restarts the GDI-Objects used by DIAdem grow by 2. The memory used by DIAdem will also grow. This growth is constant and since the application is running constantly it will lead to a crash at some point.
The memory is only released when DIAdem is closed.
This problem is occurs on 2 different computers, one running windows 2000 and one running windows xp. The program communicates with the outside world via opc and dde, but removing those blocks wont fix the leak.
0 Kudos
Message 1 of 5
(3,371 Views)
Hi USchmidt,

I'm sorry, but I'm not sure whether I can help you or not. I just can ask some questions and hope that they will help you to locate the problem.

Are you running the latest service pack for DIAdem 8.1 (for the application and driver)?
Which measurement hardware are you using? Does the problem still occur with simulated signals?
Are you always reloading the DAC scheme before you start the measurement?

Greetings
Walter

0 Kudos
Message 2 of 5
(3,345 Views)
Hi Walter,

thanks for the reply. I did install the latest application SP, but not the driver. Although I am not 100% sure it was the latest SP, I will check that tomorrow when I am back at the company.
The application gets the data from the measuring system via an Profibus-Server (OPC-Protocol). The measuring hardware isnt on the computer running DIAdem. The problem does also occur with simulated signals. I removed the OPC-In and Outputs to test the software on another pc and I got the same problem on that one.
I dont reload the DAC-Scheme, I just do a schemecheck every cylce. I did test reloading it though and it didnt help.
I did some further testing and the problem seems to be connected to saving the picture with picexport. Every time I call that function the gdi-objects raise by 2 (the displayed value changes but the maximum value raises by 2). The same happens when I use picprint as an alternative. I also tried various combinations with and without picdelete, picload or picupdate but only not saving the picture seems to stop the problem.
The picture itself is made up of static text and 5 variables that describe the current measured item (3 Strings and 2 Reals). 
Right now I am running a test version where I use buttons to display the data and its been stable for about 2 days now.
I hope that helps tracking the problem down.

Best regards
Utz
0 Kudos
Message 3 of 5
(3,328 Views)
Hi USchmidt,

You've analyzed the problem perfect, thank you. It is the command picexport. In DIAdem 8.1 is a bug in this command which causes the GDI-problem. In later DIAdem versions we changed the technique to export graphs so that this problem doesn't occur any more (I double-checked that). Unfortunately I have no workaround to use picexport without having the GDI problem. The only thing which helps is to reboot DIAdem cyclic or to update on a later revision.

Greetings
Walter
0 Kudos
Message 4 of 5
(3,319 Views)
Hi Walter,

thanks, I am glad I finally know for sure whats causing the problem.

Best regards
Utz
0 Kudos
Message 5 of 5
(3,314 Views)