Click here to Skip to main content
15,662,782 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
See more:
<b></b>An IVR Application Program has been developed with 2010,.net framework 2.0.,CTADE Version 9.1 on an XP Machine and this application has been installed on Windows 20003 server ,.netframework 2.But after the application starts when the memory reaches a certain level.the application is getting hanged saying "[Application Name] has encountered a problem and needs to close" on one machine and application disappears in another machine.What might be the reason for this and How can we find the exact point ,if that is a memory issue.

This is a multithreading application(always running) that uses the CTADE Library(IVR Application).While running the program the memory goes on increasing in the task Manager and it reaches a certain level and the program crashes.
Updated 1-Jun-11 19:28pm
Sandeep Mewara 1-Jun-11 10:01am    
Its too difficult to tell like this. Check for event logs if anything was logged.
Member 7971997 1-Jun-11 10:14am    
In the Event Viewer I got this log .Faulting application ivr 7.0.8.exe, version 1.0.4167.15661, stamp 4de32e2b, faulting module kernel32.dll, version 5.2.3790.3959, stamp 45d70ad8, debug? 0, fault address 0x0000bee7.

One step is to add an Application.UnhandledException handler, which logs the exception. That way you should get an exception trace when it does crash. If you can see the memory rising in Task Manager then chances are you are storing references to things that should be let die, or building up a list somewhere in the application which never gets cleared.
Share this answer
Do the .NET Memory counters in Performance Montiro just continue to grow over time? Does the number Handles grow and never fall?

What does you app do? What is happening when the app crashes?

There isn't enough information in your post to diagnose the problem.
Share this answer
Sergey Alexandrovich Kryukov 1-Jun-11 16:34pm    
Good points, a 5.
You would want to consider using a tool like the CLR Profiler or WinDbg [^]to take a dump when the application hangs and then do further analysis.
Share this answer
Check for over-use of static variables perhaps.

Also the using keyword will provide a way of properly garbage collecting any resources you may have used, that inherit from IDisposable.
Share this answer
Laurence1234 1-Jun-11 21:37pm    
Anyone want to justify that vote of "1"? I'm always willing to learn and be proved wrong and I think I made a relevant point here.



This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900