我已经成功地用OnEndOfDataEvent
创建了一个SmtpReceiveAgent
。它应该替换一些电子邮件的发件人,这样收件人就可以看到新的发件人并能够回复它
这已经运行得很好了,只需设置:
MailItem.Message.From = new EmailRecipient(DisplayName, Address);
似乎没有必要也设置以下位置,就像我发现的许多例子一样:
MailItem.Message.Sender = new EmailRecipient(DisplayName, Address);
MailItem.FromAddress = new RoutingAddress(Address);
我可以设置任何随机的不存在或外部地址,或同一公司/域中其他用户的任何现有地址。
但是,当该用户存在于我们的系统中,并且不是其主地址时,它将被主地址所取代。但这正是我想要的:使用其他地址。。。如何解决此问题?
不知道为什么会发生这种情况,但当我用RoutingAgent
和OnCategorizedMessage
替换SmtpReceiveAgent
和OnEndOfDataEvent
时,
它刚刚开始工作,没有其他更改。
我现在还添加了设置MailItem.FromAddress
,
以便正确影响Return-Path
标头。