Correo Outlook

Tengo este código y me funciona bien, el problema es cuando lo corro en entro maquina me marca este mensaje... Ya que cuando lo corro en otra maquina que tenga vfp 7.0 instalado no tengo problemas... Estuve leyendo en internet sobre MSMAPI32.OCX que hay que copiarlo en system32 o system, pero aun sigo teniendo problemas, no se si me hace falta algunos otros archivos ocx o librerías que tenga que copiar en las maquinas y en que lugar que no tengan instalado vfp7.0
muchas gracias amigo.. Por tu ayuda, ya que te lo agradecería mucho...
IF TYPE( '.Session1' ) <> 'O'
MESSAGEBOX( 'No se ha podido instanciar la aplicación de correo Ses.', 64, 'Atención')
RELEASE m.oForm
RETURN .F.
ENDIF

este es el codigo q tengo
#DEFINE CARBON_COPY 2
PARAMETERS m.cPara,m.cCopia,m.cAsunto, m.cMensaje, m.cArchivo, m.lMostrar
LOCAL m.oForm, m.xTemporal, m.nContador, m.nArchivos, m.cActual
m.cActual = SYS(5) + CURDIR()
IF TYPE( 'm.cPara' ) <> 'C'
m.cPara = "(xxxxxx)"
ENDIF
IF TYPE("m.cCopia") <> 'C'
m.cCopia= "(xxxxxx)"
ENDIF
IF TYPE( 'm.cAsunto' ) <> 'C'
m.cAsunto = "Hola"
ENDIF
IF TYPE( 'm.cMensaje' ) <> 'C'
m.cMensaje ="como estas"
ENDIF
IF TYPE( 'm.cArchivo' ) <> 'C'
m.cArchivo = ""
ENDIF
m.oForm = CREATEOBJECT( "form" )
WITH m.oForm
.ADDOBJECT( "Session1", "olecontrol", "MSMAPI.mapiSession" )
IF TYPE( '.Session1' ) <> 'O'
MESSAGEBOX( 'No se ha podido instanciar la aplicación de correo Ses.', 64, 'Atención')
RELEASE m.oForm
RETURN .F.
ENDIF

.ADDOBJECT("Message1", "olecontrol", "MSMAPI.mapiMessages" )
IF TYPE( '.Message1' ) <> 'O'
MESSAGEBOX( 'No se ha podido instanciar la aplicación de correo Men.', 64, 'Atención')
RELEASE m.oForm
RETURN .F.
ENDIF
WITH .Session1
.LogonUI = .T.
.DownloadMail = .F.
.SignOn
ENDWITH
WITH .Message1
.sessionid = .PARENT.Session1.sessionid
.compose
.RecipDisplayName = m.cPara
.msgsubject = m.cAsunto
.msgnotetext = m.cMensaje
.msgreceiptrequested = .T.
. SEND(m. LMostrar)
ENDWITH
. Session1. SignOff
ENDWITH
RELEASE m.oForm
SET DEFAULT TO (m.cActual)

1 Respuesta

Respuesta
1
No me has pasado el mensaje de error que tienes, pero con respecto a lo de copiar en el system32 (win 2k, xp nt) o system (win 98,95) es cierto, pero no basta con copiar la ocx en ese lugar, debes registrarlo mediante el código siguiente.
regsvr32   c:\micarpeta\MSMAPI32.OCX
Entra en inicio - ejecutar y pega ese comando y dale ejecutar, si lo registra satisfactoriamente ya esta listo para usarlo. Seria ideal copiarlo antes al system32 para antes de hacer el regsvr32 para que pongas
regsv32 c:\windows\system32\msmapi32.ocx
Bueno, si no te soluciona por favor avisa, pero enviame el mensaje de error.
Hola gracias por la respuesta, respecto al error bueno no es un error si no que entra a esta parte del código que es parte de la sección...
MESSAGEBOX( 'No se ha podido instanciar la aplicación de correo Ses. ', 64, 'Atención')
RELEASE m.oForm
RETURN .F.
Endif
Hola amigo este es el error, bueno no es error si no que entra a esta parte del código y no me permite enviar correos le intente como me dices tu y no aun otdavia no puedo enviar correo desde otra maquina que no tenga vfp7.0
IF TYPE( '.Session1' ) <> 'O'
MESSAGEBOX( 'No se ha podido instanciar la aplicación de correo Ses.', 64, 'Atención')
RELEASE m.oForm
RETURN .F.
ENDIF
Este error no se debe al MSMAPI.OCX, ya que el mismo esta registrado correctamente, más bien lo que no se pudo instanciar el programa de correo, lo cual es el OUTLOOK, verifica primero si esta instalada correctamente, si esta bien configurada en la maquina respectiva, y si envía correos sin problemas, de lo contrario tendremos que buscar la forma de interceptar el mensaje de error.
Resumiendo: trata de configurar el OUTLOOK y prueba.
Gracias amigo voy a checar la configuración del outlook
Ok, te comento que acabo de probar tu ejemplo en una PC si vfp7 y me funciono perfecto.
Amigo aun no soluciono el problema, ya verifique la configuración del correo y esta bien..., dices tu que lo calastes en otra maquina y te funciono, copiastes algún dll o ocx... lo he calado en difetentes maquinas y no... sige igual... bueno amigo creo que voy a seguir investigando por ahí, o tu que me recomiendas... hay alguna otra opción.. o que cres que sera el problema que tenga...
La verdad es que esta raro el tema, si es enviar correo lo que quieres yo uso una dll que se llama jmail.dll, envía correo sin muchos problemas y muy fácil de usar, ademas no te salen esas ventanas de advertencias de outlook, pero si es outlook lo que te interesa, entonces hay que seguir luchando.
Si te interesa el jmail, me avisas y te envío a tu mail si me envías tu dirección
Ok amigo, mira lo que pasa que todos en la empresa utilizamos el outlook, y estoy reliazando un sistema de solicitudes, como cuando falla una maquina o ocupen algún cambio en los sistemas, y así este queda registrado en su correo y en elementos enviados..
Si me podrías pasar un ejemplo de jmail.dll,
(xxxxxx)
Ok, te envíe todos los ejemplos que tengo, te prepare un form de ejemplo de jmail.dll y los demás con mapi, inclusive igual que tu tienes.
Hola amigo disculpame la tardanza en contestarte, vi los archivos que me inviastes.. si me servieron para algunas ideas... hya unos que si venían muy completos... te lo agradezco.. mucho... no lo tomes a mal, pero voy a seguir investigando sobre el tema para outlook...
No hay problema, no tengo por que tomarlo a mal, no podemos encontrar una solución fácil ya que el código no esta funcionando en una maquina especifica que tu tienes a mano y yo no, estoy en un 99% de que el problema no es tu código, si no el S.O de tu maquina o los aplicativos relacionados a ello, si puedes finalizar la pregunta te lo agradecería, y si tienes dudas podes abrirlo en una nueva.
Amigo muchas gracias por todo.te agradezco tu ayuda y tu tiempo.. si por ahí tengo otra duda con gusto te preguntare...
Saludos y gracias por tod..

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas