Delphi:MAPILOGON 错误代码 1

dur*_*ara 1 delphi authentication mapi thunderbird send

我尝试了许多版本的 MAPISend,但每次都在一处出错。MAPILogon 返回错误代码 1。

dwRet := MapiLogon(Handle,
nil,
nil,
 MAPI_DIALOG or MAPI_NEW_SESSION,
0, @MAPI_Session);
Run Code Online (Sandbox Code Playgroud)

我尝试使用“MAPISend 组件”,这段代码:

http://prog.hu/tudastar/60044-6/Delphi-Email+csatolt+file+thunderbird.html

和另外 2 个。

有趣的是,Acrobat Reader 可以使用具有附加到电子邮件功能的 MAPI,并且“发送”“邮件中”上下文菜单也可以工作。

我不明白为什么它不起作用,在我的机器(Win7)中它工作正常。

然后我失败的机器有WinXP操作系统,他们使用Thunderbird。

我可以做什么才能成功登录 MAPI?

谢谢:dd

dur*_*ara 5

我想我发现了问题。问题是,Delphi 需要在“HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows Messaging Subsystem”下有一个名为 MAPI 的注册表值,如果该值不存在,它会向您发送 1 个错误代码,这是什么造成混乱的。

该值必须是字符串。系统管理员写入了 DWORD,这导致了问题。

感谢您的帮助:dd