Não é possível configurar as definições de TLS para comunicação SMTP no Microsoft Dynamics NAV 2009

Modelo: CPR - modelo de correcção do Navision

BUGS #: 141040 (Manutenção do conteúdo)

Este artigo aplica-se para o Microsoft Dynamics NAV para todos os países e todos os idiomas.

Sintomas

Não é possível configurar as definições de TLS para comunicação SMTP no Microsoft Dynamics NAV 2009.
Este problema ocorre nos seguintes produtos:

  • Microsoft Dynamics NAV 2009 R2

  • Microsoft Dynamics NAV 2009 Service Pack 1 (SP1)


Resolução

Informações sobre correção

Existe uma correção suportada pela Microsoft. Existe uma secção de "Transferência de correcção disponível" na parte superior deste artigo da Base de dados de conhecimento. Se encontrar um problema a transferir, instalar esta correcção, ou se tiver outras questões de suporte técnico, contacte o seu parceiro ou, se inscrito num plano de suporte directamente com a Microsoft, pode contactar o suporte técnico para o Microsoft Dynamics e criar um novo pedido de suporte. Para tal, visite o seguinte Web site da Microsoft:

https://mbs.microsoft.com/support/newstart.aspxTambém pode contactar o suporte técnico para o Microsoft Dynamics por telefone utilizar estas hiperligações para números de telefone específicos do país. Para tal, visite um dos seguintes Web sites da Microsoft:

Parceiros

https://mbs.microsoft.com/partnersource/resources/support/supportinformation/Global+Support+ContactsClientes

https://mbs.microsoft.com/customersource/support/information/SupportInformation/global_support_contacts_eng.htmEm casos especiais, os custos normalmente inerentes para suporte chamadas poderão ser anuladas se um técnico de suporte técnico do Microsoft Dynamics e produtos relacionados determina que uma actualização específica resolverá o problema. Os custos normais do suporte serão aplicada a quaisquer questões de suporte adicionais e problemas que não se enquadrem na atualização específica em questão.

Depois de aplicar esta correcção, a excepção não provocar a falha de um inesperado. Nesta situação, uma mensagem de erro processado é escrita no registo de aplicação em vez disso.

Como obter o hotfix do Microsoft Dynamics NAV ou actualizar ficheiros

Após solicitar um hotfix do Microsoft Dynamics NAV, será enviada para si uma hiperligação na mensagem de correio electrónico.


Mensagem de correio electrónico conterá uma hiperligação e uma palavra-passe. Pode utilizar a hiperligação para transferir a correcção do Microsoft Dynamics NAV ou os ficheiros de actualização. Quando clica na hiperligação, abre a caixa de diálogo Transferência de ficheiros – Aviso de segurança . Em seguida, lhe for pedido para executar, guardar ou cancelar a transferência.


Se clicar em Executar, os ficheiros de iniciar a transferência e o processo de extracção. Tem de especificar uma pasta para os novos ficheiros e, em seguida, forneça a palavra-passe.


Se clicar em Guardar, tem de especificar um caminho para guardar o ficheiro comprimido. Quando abre o ficheiro que guardou, lhe for pedido para especificar um caminho para os ficheiros. Em seguida, tem de fornecer a palavra-passe fornecida na mensagem de correio electrónico.


Se clicar em Cancelar, pára o processo de transferência.


Como instalar um hotfix do Microsoft Dynamics NAV ou um ficheiro de actualização

As actualizações e correcções de plataforma do Microsoft Dynamics NAV ficam disponíveis como ficheiros único. Para instalar um hotfix do Microsoft Dynamics NAV ou uma actualização, tem de substituir os ficheiros de instalação existentes do Microsoft Dynamics NAV com a correcção ou os ficheiros de actualização.

Informações de ficheiro

A versão global desta correcção tem os atributos de ficheiro (ou atributos de ficheiro posteriores) listados na seguinte tabela. As datas e horas destes ficheiros são listadas na hora Universal Coordenada (UTC). Quando visualiza as informações do ficheiro, é convertido para a hora local. Para determinar a diferença entre a UTC e a hora local, utilize o separador Fuso horário no item data e hora no painel de controlo.

Nome do ficheiro

Versão do ficheiro

Tamanho do ficheiro

Data

Hora

Plataforma

Microsoft.navision.mail.dll

7.3.0.0

26,480

20-Jan-2011

16:31

x86

Microsoft.navision.mail.tlb

Não aplicável

3,648

20-Jan-2011

09:42

Não aplicável

Nota Esta correcção funciona com certificados assinados. Se o certificado estiver auto-assinado, manualmente deve assinar o certificado e instalar esta correcção como fidedigno.

Para tal, siga estes passos:

  1. Copie os ficheiros que extraiu a partir dos ficheiros de correcção para a seguinte pasta:
    %ProgramFiles%\Common Files\Microsoft Dynamics NAV\Mail

  2. Registe a assemblagem Microsoft.Navision.Mail.dll nova através da ferramenta de registo da assemblagem (Regasm.exe), utilizando o seguinte comando:
    RegAsm /CODEBASE /tlb:Microsoft.Navision.Mail.tlb Microsoft.Navision.Mail.dll

    Por exemplo, pode certificar-se de que o ficheiro de Regasm.exe é na pasta de correio mencionada no passo 1, abra a linha de comandos, altere o directório para "C:\Program Files (x86) \Common Dynamics NAV\Mail" e, em seguida, execute o seguinte comando para registar a assemblagem de Microsoft.Navision.Mail.dll:
    RegAsm.exe /codebase /tlb:Microsoft.Navision.Mail.tlb Microsoft.Navision.Mail.dll

  3. Altere o código da tabela de configuração correio SMTP (409) do seguinte modo:
    Código existente

    ...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 }
    }
    ...

    Código de substituição

    ...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.

    }
    ...
  4. Altere o código sob a forma de configuração correio SMTP (409) do seguinte modo:
    Código existente 1

    ...OnOpenForm=BEGIN
    RESET;
    IF NOT GET THEN
    INSERT;
    CurrForm."User ID".EDITABLE := Authentication = Authentication::Basic;
    CurrForm.Password.EDITABLE := Authentication = Authentication::Basic;
    END;
    ...

    Código de substituição 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;
    ...

    Código existente 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 }
    }
    ...

    Código de substituição 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 }
    }
    ...
  5. Altere a variável correio na codeunit correio SMTP (400) do seguinte modo:
    Valor existente

    Mail@1000 : Automation "{68AEAA7B-9523-3511-AF5F-F2381D2C6F04} 1.0:{F9DAE2A4-D2F8-37C3-86D5-E4FFE166D860}:'Microsoft Navision Mail'.SmtpMessage";

    Valor de substituição

    Mail@1000 : Automation "{68AEAA7B-9523-3511-AF5F-F2381D2C6F04} 7.3:{F9DAE2A4-D2F8-37C3-86D5-E4FFE166D860}:'Microsoft Navision Mail'.SmtpMessage";
  6. Altere o código na codeunit correio SMTP (400) do seguinte modo:
    Código existente

    ...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;
    ...

    Código de substituição

    ...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;
    ...

Pré-requisitos

Tem de ter um dos seguintes produtos instalado para aplicar esta correcção:

  • Microsoft Dynamics NAV 2009 R2

  • Microsoft Dynamics NAV 2009 Service Pack 1 (SP1)

Informações de remoção

Não é possível remover esta correcção.

DynamicsNAVSE VSTF: 245250

Estado

A Microsoft confirmou que este é um problema nos produtos da Microsoft listados na secção "Aplica-se a".

Referências

Para mais informações, clique no número de artigo seguinte para visualizar o artigo na Base de Dados de Conhecimento Microsoft

2345735 não é possível alterar a porta predefinida para comunicações de SMTP no Microsoft Dynamics NAV

Mais informações

Para mais informações, clique no número de artigo seguinte para visualizar o artigo na Base de Dados de Conhecimento Microsoft

824684 descrição da terminologia padrão utilizada para descrever actualizações de software da Microsoft

Nota Este é um artigo "Publicação rápida" criado diretamente a partir da organização de suporte da Microsoft. As informações contidas neste documento são fornecidas como-se em resposta a questões emergentes. Como resultado da urgência na sua disponibilização, os materiais podem incluir erros tipográficos e podem ser revistos em qualquer altura sem aviso prévio. Para outras considerações, consulte os Termos de utilização .

Autor: mmels
Writer: v-zhipen
Revisor técnico: mmels
Editor:

Precisa de mais ajuda?

Aumente os seus conhecimentos
Explore as formações
Seja o primeiro a obter novas funcionalidades
Aderir ao Microsoft insiders

As informações foram úteis?

Quão satisfeito está com a qualidade da tradução?

O que afetou a sua experiência?

Comentários adicionais? (Opcional)

Obrigado pelos seus comentários!

×