2 votos

¿Cómo puedo evitar que Outlook se cuelgue al recibir los enlaces de Google Drive?

¿Por qué, se preguntarán, está sucediendo esto? Bueno, para que quede claro, esto sólo ocurre cuando se recibe un correo electrónico escrito en Gmail originalmente (un enlace normal y pasado de moda sin el formato de Gmail añadido en funciona bien).

Google inserta una imagen después del enlace y esa imagen URI no contiene un protocolo ( http o https ). Se parece a algo como esto:

<img src="//ssl.gstatic.com/ui/v1/icons/common/x_8px.png">

Ahora, en un navegador web, esto funcionará perfectamente; el navegador usará cualquier protocolo que se haya usado para cargar la página (normalmente https en estos días).

En Outlook, sin embargo, esto se interpreta como un enlace para compartir archivos de Windows.

Así que Outlook decide intentar acceder a esa dirección usando el Intercambio de Archivos de Windows (en el puerto 445) y, en lugar de denegar la solicitud, Google simplemente la ignora, y Outlook deja de responder hasta que se agota 30 segundos después. Y Outlook hace esto cada vez que abre el mensaje.

Si reenvías el mensaje, Outlook hace un taco en un file protocolo de la imagen URI:

<img src="file://ssl.gstatic.com/ui/v1/icons/common/x_8px.png">

Y, por supuesto, si el receptor tiene Outlook, experimentará el mismo problema (el file no ayuda; sólo confirma que Outlook piensa que es una referencia a un archivo accesible a través de Windows File Sharing).

Esto parece ser una versión agnóstica - es un problema con todas las versiones de Outlook hasta el 2016.

Hay dos propuestas de "respuestas" a esta pregunta dispersas por Internet:

  1. Añade una entrada DNS a tu archivo de hosts para resolver ssl.gstatic.com a 127.0.0.1
  2. Desactivar la descarga automática de imágenes en Outlook

Estas no son respuestas. Son soluciones que tienen grandes desventajas:

  1. La entrada DNS solucionará el problema para Outlook... pero evitará que accedas a los servicios de Google a través de un navegador web.
  2. Desactivar la descarga de imágenes resolverá el problema para Outlook, pero es seriamente molesto para cualquiera que confíe en un montón de direcciones para no tener que elegir manualmente descargar/mostrar imágenes

Lamentablemente, Google no tiene interés en arreglar esta imagen URI (a pesar de que es la única imagen con una URI sin protocolo - los mensajes de Gmail por lo demás contienen una tonelada de otras imágenes que incluyen el protocolo), aunque es comprensible ya que la versión sin protocolo funciona bien en los navegadores.

Microsoft está en el mismo barco, afirmando que primero usaron la versión sin protocolo para indicar los enlaces de intercambio de archivos de Windows, así que tampoco lo arreglarán.

Así que nadie quiere arreglar el problema real, que ha existido durante años!

0 votos

Otra solución es leer todos estos mensajes en formato de texto plano. Me gustaría recomendarte que visites el foro de voz de usuarios de Outlook: outlook.uservoice.com para votar por una idea similar o publicar la suya propia.

0 votos

También puede consultar este artículo: slipstick.com/problemas/enfermedades-web-y-mensajes-colgados Este problema aún no se ha solucionado.

1voto

Cliff Puntos 11

He educado a los usuarios finales para que sepan por qué ocurre esto: Outlook está buscando un archivo externo pero no es capaz de recuperar los datos (forma fácil de digerir para el usuario final).

Les he dado instrucciones para editar el correo electrónico > seleccionar la imagen rota > eliminarla > guardar el correo electrónico.

Ya no hay problemas al abrir este correo electrónico como file://ssl.gstatic.com/ui/v1/icons/common/x_8px.png ya no existe en este correo electrónico.

Prefiero este método ya que ayuda a educar a los usuarios sobre algunas de las características de Outlook (edición de correos electrónicos), les informa de que no es un problema interno y debido al hecho de que recibimos tan pocos de estos correos (un incidente cada 6 meses). Por supuesto, no sé cuántas personas tienen el problema y se callan al respecto, pero podría ejecutar un PowerShell script para averiguarlo :)

0voto

John T. Puntos 41

El único real La respuesta que se me ha ocurrido es utilizar un VBA script, que compartiré a continuación. Espero que alguien más inteligente que yo (o al menos alguien con más tiempo) pueda convertir esto en un complemento real de Outlook. No me importa si gana dinero con ello, pero sería bueno que se me atribuya el código original, aunque sea bastante sencillo.

Advertencia: Si no te sientes cómodo jugando con Visual Basic para Aplicaciones (VBA) entonces debes detenerte aquí o encontrar a alguien que se sienta cómodo.

No voy a explicar cómo activar el menú de desarrollador en Outlook, pero lo necesitarás para abrir Visual Basic.

  1. Una vez en Visual Basic, vaya a:

    • Project1
      • Microsoft Outlook Objects
        • ThisOutlookSession
  2. Añade el siguiente código debajo de eso:

    ' When new mail is received... Private Sub Application_NewMailEx(ByVal EntryIDCollection As String) Dim arr() As String Dim i As Integer Dim item As Object Dim mailItem As mailItem arr = Split(EntryIDCollection, ",") For i = 0 To UBound(arr) Set item = GetItemById(arr(i)) If item.Class = olMail Then Set mailItem = item Call FixGoogleDriveLinks(mailItem) End If Next Set item = Nothing Set m = Nothing End Sub

    ' Fix Google's gstatic.com links with no protocol so that they use the https protocol explicitly ' This prevents Outlook from hanging on these since it attempts to treat them as Windows File Sharing links Function FixGoogleDriveLinks(olItem As mailItem) olItem.HTMLBody = Replace(olItem.HTMLBody, """//ssl.gstatic.com", """https://ssl.gstatic.com") ' For new messages that came directly from Gmail olItem.HTMLBody = Replace(olItem.HTMLBody, "file://ssl.gstatic.com", "https://ssl.gstatic.com") ' For messages that were forwarded using Outlook olItem.Save End Function

  3. Haga clic en el icono de guardar

  4. Reiniciar Outlook

  5. Deberá hacer clic en Enable Macros cada vez que abra Outlook (o el código no se ejecutará)

Esto arreglará cualquier mensaje nuevo, pero no arregla los mensajes antiguos que puedas tener escondido en tu bandeja de entrada (seguirán congelando Outlook durante 30 segundos, etc.) He intentado crear un código para arreglar cualquier mensaje que intentes leer, pero no he podido hacer que funcione. Sospecho que Outlook no permite ese tipo de cambios cuando estás abriendo un mensaje para leerlo.

Por favor, hágame saber si esto funciona para usted o no - Tengo una tonelada de código haciendo otras cosas, por lo que tipo de despojado de esto (así que no he probado técnicamente en esta forma prístina.)

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by: