2010-08-10 97 views
0

如果“to-address-field”的格式为[fax:user/company @ faxnumber](内部使用),我们有一个exchange服务器配置为发送电子邮件附件作为传真。当我从Outlook手动发送时它工作。但是如何使用Smtpclient发送带有上述地址的电子邮件?使用SMTPClient发送传真?

是否可以抑制电子邮件地址验证?此刻我收到此错误: “System.FormatException:指定的字符串不是电子邮件地址所需的格式。”

回答

1

它不可能通过SmtpClient。如果想要传真= asdfasdf,则需要通过interop.outlook.dll。

1

我相当确信这是不可能的。但是,至少在.Net 4.0(与早期版本相比限制较少)中,除:之外的所有内容都很好。也许你可以让管理员在字符串fax之后更改SMTP服务器以支持除:之外的其他字符?

例如,也许你可以用fax=代替。

+0

是的,通常的格式类似于“FAX = [email protected]” – 2010-08-10 07:43:05

+0

即使使用“=”而不是“:”也会失败。 堆栈跟踪: 在System.Net.Mail.MailAddressParser.ReadCfwsAndThrowIfIncomplete(字符串数据,的Int32索引) 在System.Net.Mail.MailAddressParser.ParseDomain(字符串数据,的Int32&指数) 在System.Net.Mail.MailAddressParser.ParseAddress (String data,Boolean expectMultipleAddresses,Int32&index) at System.Net.Mail.MailAddressParser.ParseMultipleAddresses(String data) at System.Net.Mail.MailAddressCollection.ParseValue(String addresses) – ThorHalvor 2010-08-10 07:45:37

+0

@ThorHalvor:您使用的是.Net 4.0 ?请记住,它比早期版本的限制性更低(尽管我只试图用包含“=”的MailAddress创建一个MailMessage,但我并没有尝试实际发送它,因此它可能会在稍后崩溃阶段)。 – 2010-08-10 07:55:56