Mi consulta es la siguiente: Necesito hacer una aplicación en Visual Basic 6.0, que me permita enviar un archivo por Email cuando presione un control Command. No creo se sea algo muy complicado, pero hasta ahora a mi no me resulta... Por tu ayuda Gracias..
1 respuesta
Respuesta de gonymon
1
1
gonymon, programador desde hace 10 años, en múltiples lenguajes
Este código debiera funcionarte On Error GoTo Errores Procesando = True PonMensaje "Inicializando Objetos de mensajería" Dim resp As VbMsgBoxResult Dim memSesion As Object 'MSMAPI.MAPISession Dim memMensaje As Object 'MSMAPI.MAPIMessages 'Si no quieres que de el mensaje de aviso del outlook, debes configurarlo 'en Herramientas->Opciones->Seguridad->Desmarcar el check adecuado 'en el Outlook Express 6 es Avisarme cuando otras aplicaciones intenten enviar 'un correo con mi nombre 'Set memSesion = CreateObject("MSMAPI.MAPISession") 'Set memMensaje = CreateObject("MSMAPI.MAPIMessages") 'Set memSesion = Me.MAPISession1 'Set memMensaje = Me.MAPIMessages1 PonMensaje "Asignando datos de identificación" MAPISession1.NewSession = True MAPISession1.UserName = Me.txtCuentaOrigen.Text MAPISession1.Password = Me.txtCuentaClave.Text MAPISession1.LogonUI = True 'MAPISession1.SessionID = 0 PonMensaje "Abriendo Sesión" MAPISession1.DownLoadMail = False MAPISession1.SignOn PonMensaje "Sesión Abierta. Inicializando Mensaje" MAPIMessages1.SessionID = MAPISession1.SessionID MAPIMessages1.MsgIndex = -1 ' nuevo mensaje MAPIMessages1.RecipAddress = Me.txtMailDestino.Text MAPIMessages1.RecipDisplayName = "Destinatario" MAPIMessages1.MsgSubject = Me.txt_msg_Asunto.Text MAPIMessages1.MsgNoteText = Me.txt_msg_Cuerpo.Text If Me.txt_msg_Adjunto.Text <> "" Then PonMensaje "Adjuntando fichero" MAPIMessages1.AttachmentIndex = 0 MAPIMessages1.AttachmentName = "Fichero Adjunto.txt" MAPIMessages1.AttachmentPathName = Me.txt_msg_Adjunto.Text MAPIMessages1.AttachmentPosition = 0 MAPIMessages1.AttachmentType = 0 ' archivo de datos End If PonMensaje "Enviando Mensaje" MAPIMessages1. Send PonMensaje "Mensaje Enviado... Desconectando" MAPISession1. SignOff PonMensaje "Liberando Recursos" Set memMensaje = Nothing Set memSesion = Nothing PonMensaje "" On Error GoTo 0 Procesando = False Exit Sub Errores: Errores = True resp = MsgBox("Ha ocurrido un error nº:" & Err.Number & vbCrLf & Err.Description & vbCrLf & Err.Source & vbCrLf & "NO SE RECOMENIENDA CONTINUAR", vbAbortRetryIgnore + vbDefaultButton2 + vbCritical) Select Case resp Case vbRetry Resume Case vbIgnore Resume Next Case Else On Error GoTo 0 PonMensaje "PROCESO CANCELADO" Procesando = False Exit Sub End Select