如何在 Windows Mobile 上使用 MAPI 获取电子邮件标题?

发布于 2024-07-19 08:55:03 字数 496 浏览 3 评论 0原文

我想在 Windows Mobile 的 PockerOutlook 中获取电子邮件标题,但目前 Microsoft.WindowsMo​​bile.PocketOutlook 能够:

  • 枚举消息帐户。

  • 发送电子邮件

  • 发送短信

  • 拦截短信

所以我想DLLImport MAPI.DLL来获取它的功能,以便获得电子邮件标题。

我找到此参考用 C++ 编写。 由于数据类型不同,转换为 C# 版本似乎很困难。 我应该自己创建一个用 C++ 编写的 dll 文件和 DLLImport to C# 应用程序吗?

I want to get email title in PockerOutlook in Windows Mobile, but currently Microsoft.WindowsMobile.PocketOutlook has the ability to:

  • Enumerate messaging accounts.

  • Send Email

  • Send SMS

  • Intercept SMS

So I want to DLLImport MAPI.DLL to get its functions in order to get the title of email.

I find this reference written in C++. It seems to be difficult to convert to C# version due to different data type. Should I create a dll file by myself written in C++ and DLLImport to C# app?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

为人所爱 2024-07-26 08:55:03

我不是 C# 人员,但 MAPI 是基于 COM 的系统。 因此,您不想导入 MAPI dll,而是想使用 C# 系统具有的任何内容来扭曲 COM 接口 (COM 互操作)。

您使用 ICEMAPISession 枚举消息存储,然后枚举每个消息存储中的文件夹使用 IMsgStore。 然后,您可以使用 IMAPIFolder 模拟文件夹中的邮件。

收到电子邮件条目 (IMessage) 后,您将要求提供PR_SUBJECT 属性。

您必须习惯 C# 中的 COM Interop 和有些令人困惑的 MAPI 接口。

I'm not a C# person, but MAPI is a COM based system. So you don't want to import the MAPI dll, you want to use whatever C# system has for warpping COM interfaces (COM Interop).

You enumlate the messaing stores with ICEMAPISession then you enumlate the folders in each store (or go directly to known folders like the "inbox") with IMsgStore. Then you can emulate the messages in the folder with IMAPIFolder.

Once you get the email message entry (IMessage) you ask for the PR_SUBJECT property.

You have to get used to the COM Interop in C# and the somewhat confusing MAPI interface.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文