问题标签 [mapi]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
122 浏览

winapi - 旧版交换 MAPI 帮助?

我正在使用一些遗留交换代码,但在查找有关某些方法/常量的信息时遇到了麻烦。谷歌搜索显示其他人使用类似的代码,但没有任何解释。有谁知道我可以在哪里找到合适的文档?我正在寻找的一个常数是:SYNC_ASSOCIATED。

0 投票
3 回答
3579 浏览

c# - C# 如何在 Outlook 加载项中获取代表电子邮件地址的发送

我正在尝试从使用另一个电子邮件地址发送的电子邮件中获取发件人电子邮件地址。Outlook 中显示的发件人是 ditribution-lists@domain.com 代表用户名 [user.name@domain.com]。该MAPI对象有一个SentOnBehalfOfName返回“用户名”但不返回电子邮件地址的方法。有谁知道如何接收 user.name@domain.com 字段?

0 投票
1 回答
279 浏览

outlook - 仅在本地保存邮件属性 (Outlook)

Outlook 加载项如何在邮件上设置 MAPI 属性(例如,正文内容),但仅将其保存在本地缓存中(而不发送回 Exchange 服务器)?我已经看到使用一些加密插件完成了这项工作。

我愿意使用几乎任何可以解决问题的 API。

谢谢!

0 投票
1 回答
1622 浏览

c# - 区分 Compose Inspector 和 Read Inspector

有没有办法判断 Outlook 2007 中的当前检查器窗口是阅读窗口还是撰写窗口?

我知道我们可以捕获事件并在其上设置标志,但我不想捕获新/回复/转发事件。有没有办法从 Inspector 对象中分辨出来?有什么财产吗?任何 MAPI 属性?

指向正确方向的指针将不胜感激。

问候,

0 投票
1 回答
153 浏览

delphi - 守卫发疯了(或者我如何让多个 MAPI 客户端一起运行?)

我有一个独立的程序,我正在尝试连接到 MAPI 以使用可用的默认系统(大部分为 Outlook)自动发送电子邮件。在大多数情况下,它工作得很好,一切都很好。但是,过了一会儿,Outlook 将开始显示我的程序正在访问 MAPI 系统,并开始拒绝显示任何内容,直到所有 MAPI 用户(我的程序和 Outlook)都关闭并重新打开。在这个阶段我最好的猜测是登录到 MAPI 系统时我没有使用正确的标志集,尽管我不明白为什么。我当前的设置是 MAPI_ALLOW_OTHERS、MAPI_EXTENDED 和 MAPI_USE_DEFAULT。任何人都可以提出一个不同的组合,让 Outlook 继续忽略我,并让守卫安抚吗?谢谢。

0 投票
1 回答
2528 浏览

c++ - 如何使用 C++ 中的 MAPI 以编程方式向已知收件人发送带有附件的电子邮件?MAPISendMail()

这个问题类似,但没有显示如何添加收件人。

我该怎么做?

我们希望尽可能多地支持尽可能多的 Windows 平台(从 XP 和更高版本)

我们正在使用 Visual Studio 2008

本质上,我们想发送一封电子邮件:

  • 预先填写的目的地地址
  • 文件附件
  • 主题行

从我们的程序中,并让用户能够添加任何信息或取消它。

编辑我正在尝试使用 MAPISendMail() 我从顶部附近链接的问题中复制了大部分代码,但我没有收到电子邮件 dlg 框,并且我从调用中得到的错误返回是:0x000f -“系统找不到驱动器指定的”

如果我注释掉设置收件人的行,它可以正常工作(当然我没有预先填写收件人)

这是代码:

0 投票
4 回答
17775 浏览

email - MAPI Windows 7 64 位

我有一个旧版应用程序,可以创建带有附件的电子邮件。该代码使用 MAPI 接口来创建消息。这段代码已经工作了很长一段时间。

当应用程序在 Windows 7 64 位计算机上运行时,对 MAPILogon 的调用将失败并出现一般错误代码。

MAPI 和 Win7 64 是否不兼容?还是有一些我不知道的 COM 问题?

0 投票
2 回答
488 浏览

delphi - 在 Outlook 中取消删除联系人

我有一个用 Delphi 编写的应用程序,可以在 Outlook 中添加/更新联系人。我遇到的问题是,如果联系人已在 Outlook 中删除,代码仍然会找到联系人并对其进行更新 - 并且联系人仍然被删除。有没有办法可以确定联系人是否被删除或取消删除?

大致代码如下所示:

0 投票
2 回答
1525 浏览

c++ - 如何从带有 PR_BODY_A 标签的 MAPI 消息中获取编码(windows mobile)?

我正在开发一个程序,通过 windows-mobile MAPI 处理传入的电子邮件和短信。代码基本上是这样的:

那行得通,我有一个消息正文。问题是这个主体是多字节编码的,我需要返回一个 Unicode 字符串。我想,我必须使用 ::MultiByteToWideChar() 函数,但我怎么能猜到,我应该应用什么代码页?使用 CP_UTF8 是幼稚的,因为它可能根本不在 UTF8 中。使用 CP_ACP 有时会起作用,但有时不会。所以,我的问题是:如何检索有关消息代码页的信息。MAPI 是否为它提供任何功能?或者除了MultiByteToWideChar()之外,还有其他方法可以解码多字节字符串吗?

谢谢!

0 投票
2 回答
767 浏览

c++ - OpenMsgStore 上的 MAPI_E_NOT_FOUND

我正在尝试使用 MAPI 打开用户的 MessageStore。奇怪的是,当我运行这个控制台应用程序时,当我与用户一起登录时,一切正常。

但是当我将它作为 Windows 服务运行时,我在尝试打开 MessageStore 时得到 MAPI_E_NOT_FOUND。

我已经将服务配置为以用户身份运行。

MapiLogonEx 似乎工作正常,GetMsgStoreTables 也给了我正确的结果(我验证了 MessageStore 的 EntryID 是正确的)。

这是我的代码: