c# - 以不存在的邮件帐户作为发件人发送邮件

标签 c# delphi-5 system.net.mail

我目前面临一个模糊的问题,我希望有人知道这个问题的答案。

过去,我的公司使用 Delphi 5。电子邮件发送由名为 TNMSMTP 的组件处理。这些应用程序习惯于使用伪造的邮件地址作为额外的信息来源。例如,如果服务器 sv102 上的服务“ReceiveDelivery”遇到问题,邮件地址将为 ReceiveDelivery@sv102

我是新来的,我试图说服管理层转向 .net 编程。为此,我需要使用 system.net.mail 框架来模仿上述行为。 但是,每当我尝试使用虚假邮件地址时,我都会收到 5.7.1“客户端无权作为此发件人发送”异常。 新程序在同一台服务器上运行,在同一用户下,并尝试访问与旧 delphi 程序相同的 smtp 服务器。

我的问题是:我能否以某种方式绕过它,或者我是否需要返回 Delphi 才能使其正常工作?

最佳答案

您收到的错误来自您的 smtp 服务器,这表明您没有像以前那样通过服务器进行身份验证。

您确定您已正确配置 smtp 客户端吗?您可以使用 smtp configuration element在您的 .config 文件中或在 runtime programmatically .

此外,您可以尝试使用服务器的完全限定域名 (FQDN)。例如,发件人电子邮件地址为:ReceiveDelivery@sv102.internal.company.com。您可以使用以下 .NET 代码获取 FQDN:How to find FQDN of local machine in C#/.NET ? .

关于c# - 以不存在的邮件帐户作为发件人发送邮件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24635347/

相关文章:

c# - SmtpClient 在发送时从服务器获取结果

c# - 使用 MonoDroid C# 显示状态栏通知

Delphi:快速(呃)宽字符串连接

windows - 当用户没有足够的权限时隐藏 COM-Server OLE 错误消息

delphi - 记录文件升级和向后兼容性

c# - 使用 C# ASP.NET 3.5 System.Net.Mail 发送大附件

c# - 创建 CSV 文件时避免重复

c# - 按名称对对象数组进行排序(多维)

c# - 为什么我不能调用扩展方法?

c# - 使用来自 gmail 的自定义域通过 c# 发送电子邮件