Outlook 2010. El tamaño de los datos adjuntos excede el límite permitido

Sé que no es un post de programación, pero me ha tenido un rato entretenido y he considerado oportuno comentarlo. Así, por un lado, si alguien puede aprovecharlo, bien y si no, seguro que me sirve de recordatorio cuando tenga que volver a utilizarlo.

El caso es que necesitaba enviar un fichero por correo electrónico que ocupaba la friolera de 30 Mb. Hasta el momento, tanto mi servidor de correo como el de la persona a la que se lo enviaba aceptan tales tamaños pero esta vez la limitación no ha venido desde el servidor. La restricción me la ha puesto directamente el Outlook que utilizo (está en el portátil, así que nada de Exchange Server). Al intentar adjuntar el archivo me encuentro el siguiente mensaje de error.

image

¡Qué contentos nos solemos poner cuando se incluyen en las aplicaciones mejoras que nos facilitan la vida y qué poca gracia nos hace cuando estos cambios alteran nuestras costumbres!.

Hace poco, de un artículo de José M. Aguilar, aprendí el término procastinación y decidí predicar con el ejemplo, así que, en lugar de empezar a fragmentar el archivo y enviar varios mensajes, me puse a investigar un poco sobre el tema. La verdad es que no tardé en llegar a la solución en la página de Microsoft: http://support.microsoft.com/kb/2222370.

Para aquellos que no quieran leer la solución desde su ubicación original, me limito a resumirla:

Outlook, en su versión 2007 no permite el envío de adjuntos de más de 20Mb, así que, para condicionar esta situación, bastará con acudir al registro del sistema, el que deberemos localizar cualquiera de las claves siguientes:

  • HKEY_CURRENT_USER\Software\Microsoft\Office\14.0\Outlook\Preferences
  • HKEY_CURRENT_USER\Software\Policies\Microsoft\Office\14.0\Outlook\Preferences

Deberemos añadir la siguiente subclave:

  • Tipo de valor: Valor DWORD
  • Nombre: MaximumAttachmentSize
  • Valor: Podemos especificar un valor en Kb que será el máximo permitido o 0 en caso de que no queramos que Outlook imponga ninguna restricción.

Una vez reiniciado el Outlook ya podremos enviar cualquier tamaño de adjuntos, siempre y cuando nos lo permitan los servidores de correo.

Claro, que ya que escribimos en un blog en el que prima el desarrollo no vamos a dejar de incluir alguna rutina Risa, así que, si queremos hacer lo mismo desde C#, pues dejo el código:

 

using Microsoft.Win32;

namespace JnSoftware.Office
{
    /// <summary>
    /// Utilidades de Outlook
    /// </summary>
    class Outlook
    {
        /// <summary>
        /// Elimina la limitación por tamaño de enviar documentos adjuntos
        /// </summary>
        public void EliminaLongitudAdjuntos()
        {
            EstableceLongitudAdjuntos(0);
        }


        /// <summary>
        /// Establece el tamaño máximo de ficheros adjuntos
        /// </summary>
        /// <param name="MbSizeMaximum">Valor que queremos 
        /// establecer como máximo para el tamaño de los ficheros
        /// adjuntos</param>
        public void EstableceLongitudAdjuntos(int MbSizeMaximum)
        {
            RegistryKey kRoot = Registry.CurrentUser;
            string rama = 
                  "Software\\Microsoft\\Office\\14.0\\Outlook\\Preferences";

            RegistryKey rk = kRoot.OpenSubKey(rama,true );
            rk.SetValue("MaximumAttachmentSize", MbSizeMaximum * 1024);
        }
    }
}
Published 27/3/2011 19:06 por Jesús Velasco
Archivado en: ,
Comparte este post: