起步软件技术论坛-X3

 找回密码
 立即注册
搜索
查看: 223|回复: 12

【结帖】如何发邮件**

[复制链接]
发表于 2008-8-19 13:13:46 | 显示全部楼层 |阅读模式
能接收到邮件,为何无法发送邮件,总是空的。

aa.jpg

65.79 KB, 下载次数: 118

回复

使用道具 举报

 楼主| 发表于 2008-8-19 13:14:44 | 显示全部楼层
配置如下

bb.jpg

24.12 KB, 下载次数: 119

回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-8-19 13:16:44 | 显示全部楼层
高级

cc.jpg

25.48 KB, 下载次数: 116

回复 支持 反对

使用道具 举报

发表于 2008-8-19 13:40:09 | 显示全部楼层
楼主,有错误信息吗?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-8-19 13:46:16 | 显示全部楼层
没有 什么都不报 就是点发送所有邮件的时候什么都没有 空白 想第一个图
回复 支持 反对

使用道具 举报

发表于 2008-8-19 14:03:47 | 显示全部楼层
楼主,你是那个版本?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-8-19 14:04:43 | 显示全部楼层
3002
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-8-19 15:00:52 | 显示全部楼层
有没有结果啊?
回复 支持 反对

使用道具 举报

发表于 2008-8-19 15:11:45 | 显示全部楼层
正在测试,有结果马上跟帖告知。
回复 支持 反对

使用道具 举报

发表于 2008-8-19 15:53:11 | 显示全部楼层
注意修改时不要用删除,请用注释

修改
业务模型\协同系统\个人事务\邮件库\邮件编辑窗体

增加DoGetInternalMailFrom方法
  function DoGetInternalMailFrom: string;
修改原有方法DoGetMailFrom

procedure TMailEditForm.AccountNameMenuItemClick(Sender: TObject);
begin
  TMenuItem(Sender).Checked := True;
  if (Pos('@', edtSendTo.Text) <> 0) then
    msgMail.From := DoGetMailFrom
  else
    msgMail.From := DoGetInternalMailFrom;
end;


function TMailEditForm.DoGetInternalMailFrom: string;
var
  I: Integer;
  lOperUserID, lOperUserDisplayName: string;
  lQuery: TQuery;
begin
  Result := '';
//  if pmAccountNames.Items.Count = 0 then
//  begin
    if Assigned(OnGetOperUserInfo) then
      OnGetOperUserInfo(Self, lOperUserID, lOperUserDisplayName);
    Result := Format('"%s" <%s>', [lOperUserDisplayName, lOperUserID]);
{  end
  else
    for I := 0 to pmAccountNames.Items.Count - 1 do
      if pmAccountNames.Items[I].Checked then
      begin
        lQuery := TQuery.Create(nil);
        try
          lQuery.ConnectionString := TRTLConsts.CollaborationDatabaseConnectionString;
          lQuery.CommandText := 'SELECT  FOWNERGUID FROM TMAILACCOUNTS WHERE FMAILADDRESS = ''' + pmAccountNames.Items[I].Caption + '''';
          lQuery.Open;
          Result := lQuery.FieldByName('FOWNERGUID').AsString;
        finally
          lQuery.Free;
        end;
       end;  //不取人员ID或邮箱ID 不管内部邮件发件人有没有邮箱帐户都显示显示名和ID lwb}
end;


function TMailEditForm.DoGetMailFrom: string;
var
  I: Integer;
  lOperUserID, lOperUserDisplayName: string;
begin
  Result := '';
  if pmAccountNames.Items.Count = 0 then
  begin
    if Assigned(OnGetOperUserInfo) then
      OnGetOperUserInfo(Self, lOperUserID, lOperUserDisplayName);
    Result := Format('"%s" <%s>', [lOperUserDisplayName, lOperUserID]);
  end
  else
    for I := 0 to pmAccountNames.Items.Count - 1 do
      if pmAccountNames.Items[I].Checked then
        Result := pmAccountNames.Items[I].Caption;
end;
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Justep Inc.

GMT+8, 2025-7-20 23:15 , Processed in 0.045639 second(s), 18 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表