不阻塞应用程序的 MAPI 调用

MAPI call without blocking application

我的应用程序正在通过 MAPI 调用发送电子邮件:

[DllImport("MAPI32.DLL")]
static extern int MAPISendMail(IntPtr sess, IntPtr hwnd, MapiMessage message, int flg, int rsv);

和其他地方:

m_lastError = MAPISendMail(new IntPtr(0), new IntPtr(0), msg, how, 0);

除一个问题外,此方法运行良好:outlook window 将完全阻止该应用程序。
这似乎是预期的行为,但我不想让它以这种方式表现。有什么想法吗?

我尝试从后台线程调用 MAPI,但似乎不可能。

这就是简单 MAPI 的工作方式 - 请改用 OOM (Application.CreateItem / MailItem.Display(false))。