Addin architecture sound?

M

MikeJohnson

My addin is simple:

It creates a hidden dialog in IDTExtensibility2::OnConnection.
This dialog is passed the OOM pointer to the MAPI namespace,
obtained through the first IDispatch* argument to OnConnection.
From within the dialog I start a timer.
In the OnTimer handler I work through all messages and attachments.

I am currently experiencing a crash in IAttachment::SaveAsFile().
The object that implements IAttachment is corrupted.

There is no multithreading involved-
All operations are performed on the main Outlook UI thread.

Because Outlook links with the multithreaded DLL version of the RTL
(MSVCRT.dll) my addin also links with the multithreaded (debug) DLL
version of the RTL.

Is my architecture sound?

I am using C++ smart pointers, as I am not too familiar with COM.
Could the problem be related to:
<http://support.microsoft.com/default.aspx?scid=kb;en-us;242527> ?

If my architecture is sound, do you think something like BoundsChecker
could help in tracking down any memory overwrites in an AddIn?

Thanks,
Mike
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top