本文对所有国家/地区和语言的所有语言环境的 Microsoft 动态导航。
症状
不能配置 SMTP 通信的 TLS 设置 Microsoft Dynamics 导航 2009 年。
下列产品中发生此问题︰
-
Microsoft Dynamics NAV 2009 R2
-
Microsoft Dynamics NAV 2009 Service Pack 1 (SP1)
解决方案
修补程序信息
可以从 Microsoft 获得受支持的修复程序。没有此知识库文章顶部"提供修补程序下载"部分。如果您遇到问题下载安装此修复程序,或有其他技术支持问题,请与您的合作伙伴或者,如果直接与 Microsoft 支持计划中进行注册,可以联系技术支持获取 Microsoft Dynamics 并创建一个新的支持请求。 为此,请访问下面的 Microsoft 网站︰
https://mbs.microsoft.com/support/newstart.aspx您可以为 Microsoft Dynamics 按国家/地区特定的电话号码中使用这些链接的电话联系技术支持。 为此,请访问下面的 Microsoft 网站之一︰
合作伙伴
https://mbs.microsoft.com/partnersource/resources/support/supportinformation/Global+Support+Contacts客户
https://mbs.microsoft.com/customersource/support/information/SupportInformation/global_support_contacts_eng.htm在特殊情况下,可免收的支持电话,可免收如果技术支持专业人员对 Microsoft Dynamics 和相关的产品的费用确定某个特定的更新能够解决您的问题。通常的支持费用将应用于任何其他支持问题和事项,不需要进行专门更新。
应用此修补程序后,该异常将不会导致意外的崩溃。在这种情况下,已处理的错误消息被写入到应用程序日志中相反。
如何获取 Microsoft Dynamics 导航修补程序或更新的文件
请求一个 Microsoft 动态导航的修补程序后,将在一封电子邮件给您发送超链接。
该电子邮件将包含超链接和密码。该超链接可用于 Microsoft Dynamics 导航修补程序或更新程序文件下载。当单击超链接时,将打开文件下载-安全警告对话框。然后,则会提示您运行,保存,或取消下载。
如果您单击运行,文件将开始下载和提取过程。必须为新文件指定一个文件夹,然后提供密码。
如果您单击保存,则必须指定保存压缩的文件的路径。当您打开已保存的文件时,则会提示您指定文件的路径。然后,您必须提供电子邮件中提供的密码。
如果单击取消,下载过程将停止。
如何安装 Microsoft Dynamics 导航修补程序或更新的文件
Microsoft Dynamics 导航平台的修补程序和更新都可作为单独的文件。要安装 Microsoft Dynamics 导航修补程序或更新,则必须替换现有 Microsoft Dynamics 导航安装文件与该修补程序或更新文件。
文件信息
此修补程序的全球版本具有的文件属性 (或更新的文件属性) 在下表中列出。日期和为这些文件的时间以协调世界时 (UTC) 列出。当您查看文件信息时,它将转换为本地时间。要了解 UTC 与本地时间之间的时差,请使用控制面板中的日期和时间项中的时区选项卡。
文件名称 |
文件版本 |
文件大小 |
日期 |
时间 |
平台 |
---|---|---|---|---|---|
Microsoft.navision.mail.dll |
7.3.0.0 |
26,480 |
20-Jan-2011 |
16:31 |
x86 |
Microsoft.navision.mail.tlb |
不适用 |
3,648 |
20-Jan-2011 |
09:42 |
不适用 |
注意:此修复程序可用于签名的证书。如果证书是自签名的必须手动注册证书,安装此修复程序作为受信任。
若要执行此操作,请执行以下步骤:
-
将复制的文件的修补程序文件提取到以下文件夹︰
%ProgramFiles%\Common 该动态 NAV\Mail -
注册新的 Microsoft.Navision.Mail.dll 程序集的程序集注册工具 (Regasm.exe) 通过使用下面的命令︰
regasm /codebase /tlb:Microsoft.Navision.Mail.tlb Microsoft.Navision.Mail.dll
例如,您可以确保 Regasm.exe 文件在步骤 1 中提到邮件文件夹中,打开命令提示符处,将目录更改为"C:\Program 文件 (x86) \Common Files\Microsoft 动态 NAV\Mail",然后运行以下命令以注册 Microsoft.Navision.Mail.dll 程序集︰
RegAsm.exe /codebase /tlb:Microsoft.Navision.Mail.tlb Microsoft.Navision.Mail.dll -
更改 SMTP 邮件设置表 (409) 中的代码,如下所示︰
现有代码...FIELDS
{
{ 1 ; ;Primary Key ;Code10 ;CaptionML=ENU=Primary Key }
{ 2 ; ;SMTP Server ;Text250 ;CaptionML=ENU=SMTP Server }
{ 3 ; ;Authentication ;Option ;OnValidate=BEGIN
IF Authentication <> Authentication::Basic THEN BEGIN
"User ID" := '';
Password := '';
END;
END;
CaptionML=ENU=Authentication;
OptionCaptionML=ENU=Anonymous,NTLM,Basic;
OptionString=Anonymous,NTLM,Basic }
{ 4 ; ;User ID ;Text30 ;OnValidate=BEGIN
TESTFIELD(Authentication,Authentication::Basic);
END;
CaptionML=ENU=User ID }
{ 5 ; ;Password ;Text30 ;OnValidate=BEGIN
TESTFIELD(Authentication,Authentication::Basic);
END;
CaptionML=ENU=Password }
}
...替换代码
...FIELDS
{
{ 1 ; ;Primary Key ;Code10 ;CaptionML=ENU=Primary Key }
{ 2 ; ;SMTP Server ;Text250 ;CaptionML=ENU=SMTP Server }
{ 3 ; ;Authentication ;Option ;OnValidate=BEGIN
IF Authentication <> Authentication::Basic THEN BEGIN
"User ID" := '';
Password := '';
END;
END;
CaptionML=ENU=Authentication;
OptionCaptionML=ENU=Anonymous,NTLM,Basic;
OptionString=Anonymous,NTLM,Basic }
{ 4 ; ;User ID ;Text30 ;OnValidate=BEGIN
TESTFIELD(Authentication,Authentication::Basic);
END;
CaptionML=ENU=User ID }
{ 5 ; ;Password ;Text30 ;OnValidate=BEGIN
TESTFIELD(Authentication,Authentication::Basic);
END;
CaptionML=ENU=Password }
// Add the following lines.
{ 50000; ;SMTP Server Port ;Integer ;InitValue=25 }
{ 50001; ;Secure Connection ;Boolean ;InitValue=No }
// End of the lines.
}
... -
更改 SMTP 邮件设置表单 (409) 中的代码,如下所示︰
现有代码 1...OnOpenForm=BEGIN
RESET;
IF NOT GET THEN
INSERT;
CurrForm."User ID".EDITABLE := Authentication = Authentication::Basic;
CurrForm.Password.EDITABLE := Authentication = Authentication::Basic;
END;
...替换代码 1
...OnOpenForm=BEGIN
RESET;
IF NOT GET THEN
BEGIN
// Add the following line.
INIT;
INSERT;
// Add the following line.
END;
CurrForm."User ID".EDITABLE := Authentication = Authentication::Basic;
CurrForm.Password.EDITABLE := Authentication = Authentication::Basic;
END;
...现有代码 2
...CONTROLS
{
{ 1 ;TabControl ;220 ;220 ;9350 ;5280 ;HorzGlue=Both;
VertGlue=Both;
PageNamesML=ENU=General }
{ 2 ;TextBox ;3850 ;990 ;5500 ;440 ;ParentControl=1;
InPage=0;
SourceExpr="SMTP Server" }
{ 3 ;Label ;440 ;990 ;3300 ;440 ;ParentControl=2 }
{ 6 ;TextBox ;3850 ;2090 ;5500 ;440 ;ParentControl=1;
InPage=0;
SourceExpr="User ID" }
{ 7 ;Label ;440 ;2090 ;3300 ;440 ;ParentControl=6 }
{ 8 ;TextBox ;3850 ;2640 ;5500 ;440 ;ParentControl=1;
InPage=0;
PasswordText=Yes;
SourceExpr=Password }
{ 9 ;Label ;440 ;2640 ;3300 ;440 ;ParentControl=8 }
{ 4 ;TextBox ;3850 ;1540 ;2750 ;440 ;ParentControl=1;
InPage=0;
SourceExpr=Authentication;
OnAfterValidate=BEGIN
CurrForm."User ID".EDITABLE := Authentication = Authentication::Basic;
CurrForm.Password.EDITABLE := Authentication = Authentication::Basic;
END;
}
{ 5 ;Label ;440 ;1540 ;3300 ;440 ;ParentControl=4 }
{ 10 ;CommandButton;7370 ;5720 ;2200 ;550 ;HorzGlue=Right;
VertGlue=Bottom;
PushAction=FormHelp }
}
...替换代码 2
...CONTROLS
{
{ 1 ;TabControl ;220 ;220 ;9350 ;5280 ;HorzGlue=Both;
VertGlue=Both;
PageNamesML=ENU=General }
{ 2 ;TextBox ;3850 ;990 ;5500 ;440 ;ParentControl=1;
InPage=0;
SourceExpr="SMTP Server" }
{ 3 ;Label ;440 ;990 ;3300 ;440 ;ParentControl=2 }
{ 6 ;TextBox ;3850 ;2640 ;5500 ;440 ;ParentControl=1;
InPage=0;
SourceExpr="User ID" }
{ 7 ;Label ;440 ;2640 ;3300 ;440 ;ParentControl=6 }
{ 8 ;TextBox ;3850 ;3190 ;5500 ;440 ;ParentControl=1;
InPage=0;
PasswordText=Yes;
SourceExpr=Password }
{ 9 ;Label ;440 ;3190 ;3300 ;440 ;ParentControl=8 }
{ 4 ;TextBox ;3850 ;1540 ;2750 ;440 ;ParentControl=1;
InPage=0;
SourceExpr=Authentication;
OnAfterValidate=BEGIN
CurrForm."User ID".EDITABLE := Authentication = Authentication::Basic;
CurrForm.Password.EDITABLE := Authentication = Authentication::Basic;
END;
}
{ 5 ;Label ;440 ;1540 ;3300 ;440 ;ParentControl=4 }
// Add the following lines.
{ 14 ;TextBox ;3850 ;2090 ;5500 ;440 ;Name=<SMTP Server Port>;
ParentControl=1;
InPage=0;
DecimalPlaces=0:0;
NotBlank=Yes;
Numeric=Yes;
SourceExpr="SMTP Server Port";
MinValue=1 }
{ 15 ;Label ;440 ;2090 ;3300 ;440 ;ParentControl=14;
CaptionML=ENU=SMTP Server Port }
{ 12 ;CheckBox ;3850 ;3740 ;440 ;440 ;ParentControl=1;
InPage=0;
ShowCaption=No;
SourceExpr="Secure Connection" }
{ 11 ;Label ;440 ;3740 ;3300 ;440 ;ParentControl=12 }
// End of the lines.
{ 10 ;CommandButton;7370 ;5720 ;2200 ;550 ;HorzGlue=Right;
VertGlue=Bottom;
PushAction=FormHelp }
}
... -
更改邮件在 SMTP 邮件 codeunit (400) 变量,如下所示︰
现有值Mail@1000 : Automation "{68AEAA7B-9523-3511-AF5F-F2381D2C6F04} 1.0:{F9DAE2A4-D2F8-37C3-86D5-E4FFE166D860}:'Microsoft Navision Mail'.SmtpMessage";
替换值
Mail@1000 : Automation "{68AEAA7B-9523-3511-AF5F-F2381D2C6F04} 7.3:{F9DAE2A4-D2F8-37C3-86D5-E4FFE166D860}:'Microsoft Navision Mail'.SmtpMessage";
-
更改 SMTP 邮件 codeunit (400) 中的代码,如下所示︰
现有代码...BEGIN
WITH SMTPMailSetup DO
Result :=
Mail.Send(
// Delete the following line.
"SMTP Server",Authentication <> SMTPMailSetup.Authentication::Anonymous,"User ID", Password);
Mail.Dispose;
CLEAR(Mail);
IF Result <> '' THEN
ERROR(Text003,Result);
END;
...替换代码
...BEGIN
WITH SMTPMailSetup DO
Result :=
Mail.Send(
// Add the following lines.
"SMTP Server",
"SMTP Server Port",
Authentication <> Authentication::Anonymous,
"User ID",
Password,
"Secure Connection");
// End of the lines.
Mail.Dispose;
CLEAR(Mail);
IF Result <> '' THEN
ERROR(Text003,Result);
END;
...
系统必备组件
您必须具有要应用此修补程序的安装以下产品之一︰
-
Microsoft Dynamics NAV 2009 R2
-
Microsoft Dynamics NAV 2009 Service Pack 1 (SP1)
删除信息
您不能删除此修补程序。
状态
Microsoft 已经确认这是“适用于”一节中列出的 Microsoft 产品中的问题。
参考资料
有关详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
2345735用于 Microsoft Dynamics 导航中的 SMTP 通信上,您不能更改默认端口
详细信息
有关详细信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:
用于描述 Microsoft 软件更新的标准术语的824684说明
注意:这是直接从创建 Microsoft 支持部门内的"快速发布"的文章。此处包含的信息是作为为了响应新出现的问题而提供的。由于以使其可用的速度,而材料可能包含印刷错误,恕不另行通知,随时可能进行修订。其他考虑因素,请参阅使用条款。