我找不到在哪里启用SMTP
on Windows 8 Pro
。令人惊讶的是,我什至没有在网上找到答案。有没有人弄清楚这一点?
像往常一样,我检查了所有必要IIS
的组件是否已安装:
仍然没有 SMTP 配置inetmgr
:
Windows 8 不再允许 SMTP 服务器,只允许 SMTP 服务。您可以转发到具有现有 SMTP 功能的服务器,但它不再充当 IIS 中的服务器。
这是一个可能对一些人有所帮助的答案。我刚刚在 Windows 8.1 Pro 上设置了一个开发服务器,其中包含许多我仍然需要支持的传统经典 ASP 站点,我真的不想更改所有邮件代码。
网络上的许多答案告诉您只需安装 IIS6 兼容性,但我相信这仅适用于服务器操作系统 - 它不适用于 Windows 8 Pro。IIS6 管理单元只是说当您尝试连接时未安装 SMTP 服务。
CAVEAT:这仅对开发有用;它允许您继续使用 CDO 取件代码将电子邮件放入取件目录而没有错误,因此您可以查看和调试您的应用程序正在发送的电子邮件,但它实际上不会发送任何内容。
Turn Windows features on or off
Internet Information Services\Web Management Tools\IIS 6 Management Compatibility \IIS Metabase and IIS6 configuration compatibility
IIS Resource Kit Tools
:http ://www.microsoft.com/en-us/download/details.aspx?id=17275Metabase Explorer
以管理员身份运行LM
,添加新密钥SmtpSvc
LM\SmtpSvc
,添加新密钥1
LM\SmtpSvc\1
,添加新的字符串记录,使用您选择的目录(为了熟悉起见,PickupDirectory
我刚刚创建了一个)\inetpub\mailroot\Pickup
IIS_IUSRS
添加对刚刚创建的文件夹的修改访问权限您所有使用旧版 CDO 拾取的代码现在都应该将电子邮件放入该目录中。这是要检查的简单测试页面:
<%@ language="JScript" %>
<%
var mailer = Server.CreateObject('CDO.Message');
mailer.Configuration.Fields.Item("http://schemas.microsoft.com/cdo/configuration/sendusing") = 1;
mailer.Configuration.Fields.Update();
mailer.From = 'rob@example.com';
mailer.To = 'rob@example.com';
mailer.Subject = 'Test';
mailer.TextBody = 'Blah blah';
mailer.Send();
%>
如果元数据库设置不起作用,您将收到有关未指定拾取目录的错误,如果您没有正确设置目录权限,则会收到拒绝访问错误,如果它起作用,则什么也没有。
我知道这是旧的,但问题是 SMTP 设置隐藏在 IIS 6 管理器中,而不是隐藏在您认为它们所在的 IIS 8 管理器中。在服务器管理器仪表板中,选择工具菜单,然后启动 Internet 信息服务 (IIS) 6.0 管理器。
我在 windows 2012 中遇到了类似的问题。但是 windows 2012 中有一个虚拟 SMTp 服务器可用。
程序是 1. 我安装了 IIS 管理器。2012 年,我搜索了 IIS。它弹出了 2 个搜索,其中一个是针对 IIS6 的。我选择了那个。在这里您发现您可以配置 SMTP 中继。
如果您有疑问,请写信给我,我会详细解释。