OOM.NET – Leaks due to using a compound call and not releasing the intermediate objects.

Sometimes spotting the cause of a leak with COM objects under .NET is very difficult. Its important to keep thinking in terms of the need to release the underlying COM objects which will be referenced so that proper clean-up can be done.  When .NET wrapped COM code returns an object, you should already know to…


Why does AppointmentItem.UserProperties.Find leak under .NET?

If you have used COM under .NET then you are probably familiar with leaking memory under .NET and the need to call ReleaseComObject in order to release underlying COM objects which are referenced by .NET code. I ran into an issue where a customer was running into a leak  with the call below: oUserProperty = oAppointmentItem.UserProperties.Find(“MyDreams”,…

1

Detecting Application Memory leaks in Unmanaged C++ with 4 lines of code:

I had written this up for my team a while back and thought I would share….    We have customers who suspect memory leaks in our APIs.  Their only clues are that memory grows and that they are using one of our APIs.  One big problem is finding out if it’s their code or our…

1