C/Visual C - Envio Email con C++???

 
Vista:

Envio Email con C++???

Publicado por Mari Carmen (1 intervención) el 21/11/2002 13:31:01
Alguien me puede explicar como enviar un email sin abrir Outlook? Gracias..
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Alejandro

Cómo enviar un email sin abrir Outlook

Publicado por Alejandro (913 intervenciones) el 03/04/2025 00:24:49
Mary, para enviar un correo electrónico sin abrir Outlook, puedes utilizar el comando `mailto:` en Windows o emplear una biblioteca de programación que permita enviar correos electrónicos directamente desde tu aplicación. Aquí te muestro ambas opciones:

Opción 1: Usar el comando `mailto:`



Puedes utilizar el comando `mailto:` en la línea de comandos de Windows o en un script. Esto abrirá el cliente de correo predeterminado, pero no necesariamente Outlook. Aquí tienes un ejemplo de cómo hacerlo:

1. Abrir el símbolo del sistema (cmd).
2. Escribe el siguiente comando:

1
start mailto:destinatario@example.com?subject=Asunto&body=Este es el cuerpo del mensaje

Reemplaza `[email protected]`, `Asunto` y `Este es el cuerpo del mensaje` con la información que desees.

Opción 2: Usar C++ para enviar un correo electrónico



Si deseas enviar un correo electrónico directamente desde un programa en C++, puedes utilizar la biblioteca **CURL**. Aquí te muestro un ejemplo básico:

1. Instalar CURL: Asegúrate de tener la biblioteca CURL instalada en tu sistema.

2. Código de ejemplo:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
#include <iostream>
#include <curl/curl.h>
 
int main() {
    CURL *curl;
    CURLcode res;
 
    curl_global_init(CURL_GLOBAL_DEFAULT);
    curl = curl_easy_init();
    if(curl) {
        curl_easy_setopt(curl, CURLOPT_URL, "smtp://smtp.example.com:587"); // Cambia esto por tu servidor SMTP
        curl_easy_setopt(curl, CURLOPT_MAIL_FROM, "<tu_email@example.com>");
 
        // Lista de destinatarios
        struct curl_slist *recipients = NULL;
        recipients = curl_slist_append(recipients, "<destinatario@example.com>");
        curl_easy_setopt(curl, CURLOPT_MAIL_RCPT, recipients);
 
        // Contenido del mensaje
        const char *message = "To: destinatario@example.com\r\n"
                              "From: tu_email@example.com\r\n"
                              "Subject: Asunto\r\n"
                              "\r\n"
                              "Este es el cuerpo del mensaje.\r\n";
        curl_easy_setopt(curl, CURLOPT_READFUNCTION, NULL);
        curl_easy_setopt(curl, CURLOPT_READDATA, message);
        curl_easy_setopt(curl, CURLOPT_UPLOAD, 1L);
 
        // Enviar el correo
        res = curl_easy_perform(curl);
        if(res != CURLE_OK) {
            std::cerr << "curl_easy_perform() failed: " << curl_easy_strerror(res) << std::endl;
        }
 
        // Limpiar
        curl_slist_free_all(recipients);
        curl_easy_cleanup(curl);
    }
 
    curl_global_cleanup();
    return 0;
}

Notas



- Configuración SMTP: Asegúrate de cambiar la URL del servidor SMTP, el puerto, y las credenciales de tu correo electrónico según sea necesario.
- Seguridad: Si tu servidor SMTP requiere autenticación, necesitarás agregar opciones adicionales para manejar el nombre de usuario y la contraseña.
- Compilación: Asegúrate de compilar tu programa con las bibliotecas de CURL correctamente enlazadas.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar