我一直在使用Smtp服务器127.0.0.1.我得到的错误:
System.Net.Mail.SmtpException: Cannot get IIS pickup directory.at System.Net.Mail.IisPickupDirectory.GetPickupDirectory().
当从ASP网页发送电子邮件时发生此错误.但是从ASP.NET页面发送电子邮件,未发生错误.Plz的帮助.
Luk*_*rny 14
不幸的是,在尝试确定IIS/SMTP拾取目录的位置时发生任何类型的问题时会引发此异常.常见原因是缺少IIS SMTP服务.
如果使用System.Net.Mail.SmtpClient发送邮件,请尝试手动设置拾取目录:
// C#
var client = new SmtpClient();
client.DeliveryMethod = SmtpDeliveryMethod.SpecifiedPickupDirectory;
client.PickupDirectoryLocation = ...;
client.Send(...);
Run Code Online (Sandbox Code Playgroud)
或者在ASP.NET的Web.config中设置它:
<configuration>
<system.net>
<mailSettings>
<smtp deliveryMethod="SpecifiedPickupDirectory">
<specifiedPickupDirectory
pickupDirectoryLocation="..." />
<network defaultCredentials="false" />
</smtp>
</mailSettings>
</system.net>
</configuration>
Run Code Online (Sandbox Code Playgroud)
或者,使用SmtpDeliveryMethod.Network方法代替并将Host和Port属性发送到SMTP服务器.
更多信息:http://forums.iis.net/p/1149338/1869548.aspx
Jon*_*noW 10
拾取目录存储在II6元数据库中,因此如果您的网络应用程序运行的帐户无法访问所需的节点,则可能会抛出此错误(我自己).元数据库权限与文件权限分开,因此您可以使用Metabase explorer进行探索:
http://www.microsoft.com/downloads/details.aspx?FamilyID=56fc92ee-a71a-4c73-b628-ade629c89499&displaylang=en (它是IIS资源工具包的一部分)
这些节点需要具有给您的Web应用程序用户的读取权限:\ LM\SmtpSvc\LM\SmtpSvc\1
| 归档时间: |
|
| 查看次数: |
31491 次 |
| 最近记录: |