PDA

Ver la Versión Completa : Enviar correo desde Word


MAXIUM
10-08-2010, 08:20:26
Si tengo un documento abierto, ¿como lo envio con determinada dirección por correo?

Neftali [Germán.Estévez]
10-08-2010, 10:17:01
Se me ocurren 2 opciones. Una mirar desde las macros de Word cómo se hace o hacerlo desde fuera.
Graba una macro con las opciones de enviar por correo y luego mira el código a ver cómo lo está haciendo; Eso te dará pistas del código a utilizar.

La otra opción es grabar el fichero en una directorio temporal y enviarlo como adjunto utilizando indy (por ejemplo).

MAXIUM
10-08-2010, 19:25:18
Gracias Neftali,

Ya intente la primera opción y solo me deja el código de mostrar las barras de To, BC y Subjet.

La otra opción no me sirve mucho, ya que el documento se crea y se deja abierto para ser editado, luego el usuario tendría que grabarlo. Mejor lo envía el mismo... en ese caso me interesaría poder agregar en forma automática el destinatario al momento de abrir o crear el documento.

He visto el componente WordLetterContent, pero no se como se utiliza en conjunto con WordApplication. La documentación en nula.

Por otra parte, este código me promete enviar correo desde Word sin preocuparme que versión o gestor de correo tenga.


WordApplication1.ActiveDocument.HasRoutingSlip:= Verdadero;
WordApplication1.ActiveDocument.RoutingSlip.Subject:= 'Notificación';
WordApplication1.ActiveDocument.RoutingSlip.AddRecipient('club@delphi.com');
WordApplication1.ActiveDocument.RoutingSlip.Delivery:= wdAllAtOnce;
WordApplication1.ActiveDocument.Route;

Sin embargo me arroja que no tengo ningún gestor de correo instalado :eek:

Una pregunta que tal vez me pueda ayudar. ¿Como creo y/o arranco una Macro en Word desde Delphi?.

Neftali [Germán.Estévez]
11-08-2010, 10:05:20
Una pregunta que tal vez me pueda ayudar. ¿Como creo y/o arranco una Macro en Word desde Delphi?.

A ver si esto te sirve...
http://www.clubdelphi.com/foros/showthread.php?t=37654

MAXIUM
11-08-2010, 18:54:05
OK, la cosa quedo así y funciona de momento:

En Delphi se copia en el portapapeles la dirección de correo (club@delphi.com) se crea el documento, se llena si es necesario, se muestra en pantalla y se llama a la Macro "Correo" (todo esto dentro de Delphi)

Sub Correo()
'
' Correo Macro
' Macro grabada el 10/08/2010 por MAXIUM

Dim WshShell
Set WshShell = CreateObject("WScript.Shell")

WshShell.SendKeys "%avc"
WshShell.SendKeys "^v"

End Sub

El documento queda listo para ser editado y enviado por el usuario :cool: