Visualizzazione dei risultati da 1 a 7 su 7
  1. #1

    invio email codice C aiuto

    ciao a tutti.... è da un po di settimane che mi sono messo a leggere guide su guide su come mandare una email (con o senza allegato) tramite un programma .exe fatto in codice C.... problema.... non ci capito una mazza di nulla... le poche cose che ho capito sono che devo configurare una socket ma nn ho idea da dove cominciare...per questo mi rivolgo a voi....
    vorrei fare un programma C che invia una email in automantico a un indirizzo di posta elettronica di gmail.... qualcuno sa come fare????

    P.s sto usando windows come Sistema operativo

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,472
    Beh, non è difficile ma bisogna vedere cosa non hai capito del testo che hai letto.

    Così come l'hai detto, il problema è troppo generico. L'unica soluzione sarebbe fornirti il programma completo. Ma dato che non è quello che vuoi, devi fare una domanda più precisa circa la parte del codice su cui hai dubbi.
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  3. #3
    alla fine ho trovato un programma gia fatto.... l'ho provato ma nn mi invia nulla... in cosa sbaglio???

    ecco il codice:

    #include <stdio.h>
    #include <stdlib.h>
    #include <winsock.h>
    #include <windows.h>
    #include <unistd.h>

    typedef char stringa[500];

    SOCKET conn;
    FILE *fmail;
    int lun, err=0;
    int time=0;
    char buf[1500],end[7];
    char input;
    char Mittente[50]="xxxxxxxxxxxxx";
    char Destinatario[50]="xxxxxxxxxx";
    char Oggetto[50]="xxxxxxxx";
    SOCKADDR_IN conn_addr;
    WSADATA data;
    WORD versione;
    LPHOSTENT host;



    void RispostaServer();
    void inviomail();

    int main(int argc,char **argv)
    {

    printf("\nNome/E-mail Mittente: %s",Mittente );
    printf("\nE-mail Destinatario: %s", Destinatario);
    printf("\nOggetto: %s", Oggetto);

    printf ("Invio E-mail in corso...\n");
    inviomail();
    Sleep(200);
    WSACleanup();
    system("cls");

    printf("\nE-Mail inviata");
    Sleep(2500);
    return 0;
    }

    void inviomail()
    {
    fmail=fopen("prova.txt","r");
    if (fmail==NULL)
    {
    printf("Errore file \"prova.txt\"");
    }

    versione=MAKEWORD(2,0);
    WSAStartup(versione,&data);

    conn=socket(PF_INET,SOCK_STREAM,0);
    conn_addr.sin_family=PF_INET;
    conn_addr.sin_port=htons(25);

    host=gethostbyname ("esmtp.gmail.com"); //perche uso gmail per la posta
    if (host==NULL)
    {
    err=WSAGetLastError();
    printf ("Errore con l'Host\t%d",err);
    }

    conn_addr.sin_addr = *((LPIN_ADDR)*host->h_addr_list);
    lun=sizeof(struct sockaddr);

    err=connect(conn,(struct sockaddr*)&conn_addr,lun);
    if (err!=0)
    {
    err=WSAGetLastError();
    printf("Errore della Socket\t%d",err);
    }

    RispostaServer();

    sprintf(buf,"helo inviamail\nmail from:<____________>\nrcptto:<%s>\ndata\n",Destinat ario);
    send(conn, buf, strlen(buf), 0);

    RispostaServer();

    sprintf(buf, "From: %s\n",Mittente);
    send(conn, buf, strlen(buf), 0);

    sprintf(buf, "To: %s\n",Destinatario);
    send(conn, buf, strlen(buf), 0);

    sprintf(buf, "Subject: %s\n",Oggetto);
    send(conn, buf, strlen(buf), 0);


    while (feof(fmail)==0){
    fscanf (fmail,"%c",&input);
    send (conn,&input,1,0);
    }

    sprintf(buf, "\n.\n");
    printf(buf);
    send(conn, buf, strlen(buf), 0);

    fclose(fmail);


    sprintf(end,"quit\n");
    send(conn,end,strlen(end),0);

    RispostaServer();


    closesocket(conn);

    }


    void RispostaServer(){

    char mess[1000];
    int n=0;
    n=recv(conn,mess,200,0);
    mess[n]=0;
    }

    oltre al fatto che nn va inserendo i miei dati nei vari campi non so cosa deve andare inserito in questo campo particolare....

    sprintf(buf,"helo inviamail\nmail from:<____________>\nrcptto:<%s>\ndata\n",Destinat ario);

    qualcuno sa cosa c devo mettere???

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,472
    Ci va il mittente ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  5. #5
    Se non erro l'SMTP di Gmail va solo su SSL, il che complica abbastanza la questione...
    Amaro C++, il gusto pieno dell'undefined behavior.

  6. #6
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,472
    Originariamente inviato da MItaly
    Se non erro l'SMTP di Gmail va solo su SSL, il che complica abbastanza la questione...
    Esatto ... e ci sono tante altre cose a complicare la questione ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  7. #7
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,333

    Moderazione

    Invito a leggere il Regolamento.

    Qui non si sviluppa codice pronto all'uso per risolvere un problema, né si analizza codice reperito altrove per identificarne gli errori e segnalarne la natura e la conseguente risoluzione, ma si da semplicemente una mano a coloro che, essendosi adeguatamente documentati, hanno errori o problemi specifici da risolvere nella scrittura del proprio codice.
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.