No puede configurar la configuración de TLS para la comunicación de SMTP en Microsoft Dynamics NAV 2009

Se aplica a: Dynamics NAV 2009

En este artículo se aplica a Microsoft Dynamics NAV para todos los países y todas las configuraciones regionales.

Síntomas


No puede configurar la configuración de TLS para la comunicación de SMTP en Microsoft Dynamics NAV 2009.
Este problema se produce en los siguientes productos:
  • Microsoft Dynamics NAV 2009 R2
  • Microsoft Dynamics NAV 2009 Service Pack 1 (SP1)

Solución


Información de la revisión

Existe un hotfix disponible desde Microsoft. Hay una sección de "Descarga de revisión disponible" en la parte superior de este artículo de Knowledge Base. Si tiene un problema al descargar, instalar esta revisión, o si tiene otras preguntas de soporte técnico, póngase en contacto con su socio o si está inscrito en un plan de soporte directamente con Microsoft, puede ponerse en contacto con soporte técnico para Microsoft Dynamics y crear una nueva solicitud de soporte técnico. Para ello, visite el siguiente sitio Web de Microsoft:También puede comunicarse con soporte técnico para Microsoft Dynamics por teléfono mediante estos vínculos para números de teléfono específico del país. Para ello, visite uno de los siguientes sitios Web de Microsoft:

Asociados de negociosClientesEn casos especiales, los costos derivados normalmente de las llamadas pueden cancelarse si un profesional de soporte técnico de Microsoft Dynamics y productos relacionados de soporte determina que una actualización específica resolverá el problema. Los costos habituales de soporte se aplicarán a las preguntas de soporte técnico adicionales y problemas que no guarden relación con la actualización en cuestión.

Después de aplicar esta revisión, la excepción no producen un error inesperado. En esta situación, se escribe un mensaje de error controlado en el registro de aplicación en su lugar.

Cómo obtener la revisión de Microsoft Dynamics NAV o actualizar archivos

Después de solicitar una revisión de Microsoft Dynamics NAV, se le enviará un hipervínculo en un mensaje de correo.


El mensaje incluirá un hipervínculo y una contraseña. Puede usar el hipervínculo para descargar la revisión de Microsoft Dynamics NAV o los archivos de actualización. Al hacer clic en el hipervínculo, se abre el cuadro de diálogo Descargar archivo-Advertencia de seguridad . A continuación, deberá ejecutar, guardar o cancelar la descarga.


Si hace clic en Ejecutar, los archivos comienzan la descarga y el proceso de extracción. Debe especificar una carpeta para los archivos nuevos y, a continuación, proporcione la contraseña.


Si hace clic en Guardar, especifique una ruta de acceso para guardar el archivo comprimido. Cuando se abre el archivo que guardó, deberá especificar una ruta para los archivos. A continuación, debe proporcionar la contraseña incluida en el correo electrónico.


Si hace clic en Cancelar, se detiene el proceso de descarga.


Cómo instalar una revisión de Microsoft Dynamics NAV o un archivo de actualización

Las actualizaciones y revisiones de la plataforma Microsoft Dynamics NAV están disponibles como archivos únicos. Para instalar una revisión de Microsoft Dynamics NAV o una actualización, debe reemplazar los archivos de instalación de Microsoft Dynamics NAV existentes con la revisión o la actualización de los archivos.

Información de archivo

La versión global de esta revisión tiene los atributos de archivo (o atributos de último archivo) mostrados en la tabla siguiente. Las fechas y horas de estos archivos se muestran en la hora Universal coordinada (UTC). Al ver la información del archivo, se convierte en hora local. Para encontrar la diferencia entre la hora UTC y la hora local, utilice la ficha Zona horaria en el elemento de Fecha y hora del Panel de control.
Nombre del archivoVersión del archivoTamaño de archivoFechaHoraPlataforma
Microsoft.navision.mail.dll7.3.0.026,48020-Jan-201116:31x86
Microsoft.navision.mail.tlbNo aplicable3,64820-Jan-201109:42No aplicable
Nota: Esta revisión funciona con certificados autofirmados. Si el certificado es autofirmado, debe firmar el certificado manualmente e instalar esta revisión como de confianza.

Para ello, siga estos pasos:
  1. Copie los archivos que extrajo los archivos de la revisión a la carpeta siguiente:
    %ProgramFiles%\Common Files\Microsoft Dynamics NAV\Mail
  2. Registrar el ensamblado de Microsoft.Navision.Mail.dll de nuevo a través de la herramienta Registro de ensamblados (Regasm.exe) mediante el comando siguiente:
    regasm / codebase /tlb:Microsoft.Navision.Mail.tlb Microsoft.Navision.Mail.dll

    Por ejemplo, puede asegurarse de que el archivo Regasm.exe está en la carpeta de correo que se menciona en el paso 1, abra el símbolo del sistema, cambie el directorio a "C:\Program Files (x86) \Common NAV\Mail Dynamics" y, a continuación, ejecute el siguiente comando para registrar el ensamblado de Microsoft.Navision.Mail.dll:
    RegAsm.exe /codebase /tlb:Microsoft.Navision.Mail.tlb Microsoft.Navision.Mail.dll
  3. Cambie el código en la tabla de configuración de correo SMTP (409) como sigue:
    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 sustitución
    ...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. Cambie el código en el formulario de configuración de correo SMTP (409) como sigue:
    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 nuevo 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 nuevo 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. Cambie la variable de correo en la codeunit de correo SMTP (400) como sigue:
    Valor existente
    Mail@1000 : Automation "{68AEAA7B-9523-3511-AF5F-F2381D2C6F04} 1.0:{F9DAE2A4-D2F8-37C3-86D5-E4FFE166D860}:'Microsoft Navision Mail'.SmtpMessage";
    Valor de reemplazo
    Mail@1000 : Automation "{68AEAA7B-9523-3511-AF5F-F2381D2C6F04} 7.3:{F9DAE2A4-D2F8-37C3-86D5-E4FFE166D860}:'Microsoft Navision Mail'.SmtpMessage";
  6. Cambie el código en la codeunit de correo SMTP (400) como sigue:
    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 sustitución
    ...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;
    ...

Requisitos previos

Debe tener uno de los siguientes productos instalados para aplicar esta revisión:
  • Microsoft Dynamics NAV 2009 R2
  • Microsoft Dynamics NAV 2009 Service Pack 1 (SP1)

Información de eliminación

No se puede quitar este hotfix.

Estado


Microsoft ha confirmado que se trata de un problema de los productos de Microsoft que se enumeran en la sección "Aplicable a".

Referencias


Para obtener más información, haga clic en el siguiente número de artículo para verlo en Microsoft Knowledge Base:
2345735 no se puede cambiar el puerto predeterminado para comunicaciones SMTP en Microsoft Dynamics NAV

Más información


Para obtener más información, haga clic en el siguiente número de artículo para verlo en Microsoft Knowledge Base:
824684 descripción de la terminología estándar que se utiliza para describir las actualizaciones de software de Microsoft
Nota: Es un artículo "Publicación rápida" creado directamente desde dentro de la organización de soporte técnico de Microsoft. La información contenida en este documento se proporciona como está en respuesta a nuevos problemas. Como consecuencia de la velocidad en la puesta a disposición, los materiales pueden incluir errores tipográficos y podrán revisarse en cualquier momento sin previo aviso. Para obtener información adicional, consulte Condiciones de uso.