OOM.NET – Outlook Crashes When Using Outlook Object Model in Multiple Threads

Matt Stehle used to be on my team prior and had blogged on the usage of Outlook Object Model (OOM) under .NET. However, his blog is being closed and I am re-blogging his content here. One of the major requirements most developers are up against these days is ensuring their code runs as fast as…


OOM.NET – Like a good standup comic – use scope and have good timing…

Matt Stehle used to be on my team prior and had blogged on the usage of Outlook Object Model (OOM) under .NET. However, his blog is being closed and I am re-blogging his content here. Recently, I was helping someone with a Outlook item leak type issue involving a Task FormRegion.  The symptom was that…


OOM.NET Part 4 – Don’t Thread On Me

Matt Stehle used to be on my team prior and had blogged on the usage of Outlook Object Model (OOM) under .NET. However, his blog is being closed and I am re-blogging his content here. Patrick posted a discussion of multithreading with Outlook Object Model and why it doesn’t help to make OOM calls on…


Part 3 – Back to the Basics, MSDN Must Reads

Matt Stehle used to be on my team prior and had blogged on the usage of Outlook Object Model (OOM) under .NET. However, his blog is being closed and I am re-blogging his content here. The Outlook Developer Reference on MSDN has great information on .NET and COM interop which I would consider a prerequisite…


OOM.NET Part 2 – Outlook Item Leaks

Matt Stehle used to be on my team prior and had blogged on the usage of Outlook Object Model (OOM) under .NET. However, his blog is being closed and I am re-blogging his content here. Outlook item leaks are the most common OOM with .NET issues that we see and I’ve debugged enough of them…


OOM.NET Part 1 – Introduction and Why Events Stop Firing…

Matt Stehle used to be on my team prior and had blogged on the usage of Outlook Object Model (OOM) under .NET. However, his blog is being closed and I am re-blogging his content here. OOM.NET is not a special API set that was created in managed code.  It is the name I’ve given 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

Call Dispose on client when calling COM+ objects.

Dispose MUST be called from the client and not from the serviced component…   There is a requirement for clients of COM+ Serviced Components to call dispose on the component.  If you do not do this, it will not shut down.  When you inherit from servicedcomponent, you also inherit from IDisposable.  However, the client MUST…

1