How to implement MFC support in an ATL COM DLL add-in


If you select MFC support in your ATL add-in, all exposed COM functions should call:

AFX_MANAGE_STATE(AfxGetStaticModuleState());

at their entry point.

The following code shows how to create a dialog:

//-------------------------------------------
STDMETHODIMP CAPITestATL::StartNotepad()
{
AFX_MANAGE_STATE(AfxGetStaticModuleState());

TDE_Dialog TDE_Dlg(AfxGetMainWnd()); // set parent to be SW

TDE_Dlg.DoModal();

return S_OK;
}
//-------------------------------------------