Delphi:MAPILOGON错误代码1

Delphi:MAPILOGON错误代码1,delphi,send,mapi,thunderbird,authentication,Delphi,Send,Mapi,Thunderbird,Authentication,我尝试了许多版本的MAPISend,但每次都在一个地方出错。 MAPILogon返回,错误代码为1 dwRet := MapiLogon(Handle, nil, nil, MAPI_DIALOG or MAPI_NEW_SESSION, 0, @MAPI_Session); 我尝试使用“MAPISend组件”,代码如下: 和其他两个 有趣的是,Acrobat Reader可以使用带有“附加到电子邮件”功能的MAPI,“在邮件中发送”上下文菜单也可以工作 我不明白为什么它不工作,在我的机器

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

dwRet := MapiLogon(Handle,
nil,
nil,
 MAPI_DIALOG or MAPI_NEW_SESSION,
0, @MAPI_Session);
我尝试使用“MAPISend组件”,代码如下:

和其他两个

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

我不明白为什么它不工作,在我的机器(Win7)中它工作得很好

然后我失败的机器有WinXP操作系统,他们使用了雷鸟

如何才能成功登录MAPI

谢谢:
dd

我正在使用RapWare组件

Hth的


斯坦科。

我想我找到了问题所在。 问题在于,Delphi需要一个名为MAPI的注册表值 “HKEY\U本地\U计算机\软件\ Microsoft\Windows消息子系统” 如果不存在,它会向您发送1个错误代码,这是造成混淆的基础

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

感谢您的帮助:
dd

我不确定是否存在任何特定于Delphi的问题,但您不需要在调用MAPISendMail之前调用MAPILogon。如果您这样做,我不会检查返回值。这就是为什么Acrobat Reader可以正常工作,而您的SMAPI客户端不能正常工作。

您确定Thunderbird注册正确吗?以下是有关TB和MAPI的一些信息: