AYUDA EN LÍNEA
 WINDEVWEBDEV Y WINDEV MOBILE

Este contenido se ha traducido automáticamente.  Haga clic aquí  para ver la versión en inglés.
Ayuda / WLanguage / Funciones WLanguage / Comunicación / Gestión de correos electrónicos
  • Principio
  • Leyendo un correo electrónico (Email Variable): Etapas a seguir
  • Ejemplo
  • Lectura de un Email (estructura Email): Etapas a seguir
  • Ejemplo
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaReportes y ConsultasCódigo de Usuario (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Código Navegador
WINDEV Mobile
AndroidWidget Android iPhone/iPadIOS WidgetApple WatchMac CatalystUniversal Windows 10 App
Otros
Procedimientos almacenados
Principio
Esta página de ayuda explica cómo leer un Email desde una aplicación WINDEV y cómo mostrar su contenido en una aplicación WINDEV.
El Email es leído por varias funciones de WLanguage (EmailReadFirst, EmailReadNext, ...).
El contenido de la Email puede ser recuperado:
  • en una variable de tipo Email. Las variables Email permiten manipular varios Email s simultáneamente.
  • a través de la estructura Email. Las variables de esta estructura contienen las informaciones relativas a la Email leídas.
Las variables de la estructura de Email (así como las propiedades de las variables de Email) corresponden a las características de Email.
Leyendo un correo electrónico (Email Variable): Etapas a seguir
Los pasos para leer una Email en WLanguage son los siguientes:
  1. Utilice una función para leer los correos electrónicos para navegar por todos los correos electrónicos de una sesión de mensajería, hay varias sintaxis disponibles:
    • Realice un bucle como:
      MySession is emailPOP3Session
      MyMessage is Email
      EmailReadFirst(MySession, MyMessage)
      WHILE NOT MyMessage.Out
      // Insert the message process
      EmailReadNext(MySession, MyMessage)
      END
    • Recuperar todos los mensajes de una array con EmailGetAll:
      MySession is emailPOP3Session
      MyMessages is array of Email = EmailGetAll(MySession)

      Observaciones:
      • Cuando se utiliza el protocolo POP3, los correos electrónicos entrantes que se pueden leer son los correos electrónicos que se han recibido cuando se inició la sesión.. Todos los correos recibidos una vez iniciada la sesión no son "Visible".. Para acceder a los nuevos correos electrónicos entrantes, la sesión debe cerrarse y reiniciarse.
      • Para seguir el progreso de la lectura, utilice EmailProgressBar.
  2. Lea el contenido de la Email Variable.
    Observación: Si el correo electrónico contiene cabeceras específicas, pueden leerse a través de la aplicación Email Variable.
  3. Si el HTML Property no está vacío: el mensaje está en formato HTML. Debe visualizarse en un navegador (véase el ejemplo siguiente).
    Por cada archivo adjunto:
    • Guarde el archivo en el disco (EmailSaveAttachment).
    • Examine el mensaje HTML y busque el valor "cID:"+Identificador del archivo adjunto. Reemplaza este valor por la ruta completa del archivo adjunto copiado en el disco.
      Mostrar el mensaje en un navegador.
  4. Si el HTML Property está vacío: el mensaje está en formato de texto.
  5. Guarde los archivos adjuntos en el disco si es necesario y muestre el texto del mensaje.

Ejemplo

MyMessage is Email
...
Temp_Dir is string = "C:\temp\"
CID is string
I is int
// For each attached file
Attachment is emailAttach
FOR EACH Attachment OF MyMessage.Attach
// Copy the file into a temporary directory
EmailSaveAttachment(Attachment, Temp_Dir + Attachment.Name)
// Retrieve the identifier of the attached file
CID ="cid:" + Attachment.Identifier
// Replace the references to the attached file by the real name of the file
MyMessage.HTML = Replace(MyMessage.HTML, CID, ...
"file:" + Temp_Dir + Attachment.Name)
END
// Display the HTML content in an HTML control
HTM_Display = MyMessage.HTML
Lectura de un Email (estructura Email): Etapas a seguir
Los pasos para leer una Email en WLanguage son los siguientes:
  1. Utilizar una función de lectura de correos electrónicos (EmailReadFirst, EmailReadNext, ...). Para seguir el progreso de la lectura, utilice EmailProgressBar.
  2. Lea el contenido de la estructura de Email (vea el ejemplo a continuación).
  3. Si el Email.HTML Variable no está vacío: el mensaje está en formato HTML. Debe visualizarse en un navegador.
    Para cada archivo adjunto (el Email.NbAttach Variable no está vacío):
    • Guarde el archivo en el disco (EmailSaveAttachment).
    • Recorra el mensaje HTML buscando el valor "cID:"+Email.AttachIdentifier del archivo adjunto. Reemplaza este valor por la ruta completa del archivo adjunto copiado en el disco.
    • Mostrar el mensaje en un navegador.
  4. Si el Email.HTML Variable está vacío: el mensaje está en formato de texto.
  5. Guarde los archivos adjuntos en el disco si es necesario y muestre el texto del mensaje.
Observación: Cuando se utiliza el protocolo POP3, los correos electrónicos entrantes que se pueden leer son los correos electrónicos que se han recibido cuando se inició la sesión.. Todos los correos recibidos una vez iniciada la sesión no son "Visible".. Para acceder a los nuevos correos electrónicos entrantes, la sesión debe cerrarse y reiniciarse.

Ejemplo

Temp_Dir is string = "C:\temp\"
CID is string
I is int

// For each attached file
FOR I = 1 TO Email.NbAttach
// Copy the file into a temporary directory
EmailSaveAttachment(Email.Attach[I], ...
Temp_Dir + Email.Attach[I])
// Retrieve the identifier of the attached file
CID = "cid:" + Email.AttachIdentifier[I]
// Replace the references to the attached file
// by the real name of the file
Email.HTML = Replace(Email.HTML, CID, "file:" + ...
Temp_Dir + Email.Attach[I])
END

// Display the HTML content in a Web browser
// Create a temporary file containing the HTML
FileName is string = Temp_Dir + "temp.htm"
hFile is int = fOpen(FileName, foCreate + foWrite)
fWrite(hFile, Email.HTML, Size(Email.HTML))
fClose(hFile)

// Supply the temporary file to the browser
// Web_Browser is an ActiveX control "Microsoft Web Browser"
Web_browser>>Navigate(FileName)
Versión mínima requerida
  • Versión 9
Esta página también está disponible para…
Comentarios
Haga clic en [Agregar] para publicar un comentario

Última modificación: 23/06/2023

Señalar un error o enviar una sugerencia | Ayuda local