Newsgroup: it.comp.programmare.win32
Titolo: Problema con POP

Salve, sono Scopelliti Giuseppe, e desiderei ricevere il vostro aiuto
per la risoluzione di un problema.
Ho creato un'applicazione in c++, che sfrutta il protocollo pop per la
lettura delle email.
Lo scopo di tale applicazione è quello di controllare la casella emali
ongni x secondi e notificarmi l'arrivo di nuove mail.
Il problema che ho è il seguente.
Nel momento in cui l'applicazione si collega al server di posta rileva
i messaggi contenuti in esso, ma mi segnala che tutti sono nuovi
messaggi, quando in realta ho ad esempio 2 nuovi messaggi e 34 messaggi
vecchi  gia letti.
Come posso fare a far rilevare solo i nuovi messaggi?
Grazie per l'aiuto

Come posso fare a far rilevare solo i nuovi messaggi?
Non ho esperienza del problema in questione, ma mi pare che il problema sia 
risolvibile
cancellando le email già scaricate dal server, oppure, se non lo vuoi fare e 
vuoi
lasciare un duplicato sul server (stando attenti a non superare la capienza 
massima), puoi
scaricare in locale il titolo e la data delle email già lette, così da non 
scaricarle più in
futuro.
Probabilmente, a seconda delle librerie che usi, ci saranno comandi per 
cancellare le
email dal server e per scaricare solo il titolo o la data.

una cosa del genere gia la faccio, ma si impalla il programma.
Io credo, e ne sono quasi convinto, che esista un comando defiito
all'interno del protocollo pop che ti permetta di conoscrere quali sono
i messaggi non letti da quelli gia letti.
Dico questo perche secondo me è quello che sta alla base del
funzionamento dei mail reader web oriented.
Sei daccordo con me?
Solo che ho cercato dappertutto e non sono riuscito a capire come fare


POP3: 10:12:22 [tx] USER <privato>
POP3: 10:12:22 [rx] +OK Password required
POP3: 10:12:22 [tx] PASS <privato>
POP3: 10:12:22 [rx] +OK 4 messages
POP3: 10:12:22 [tx] STAT
POP3: 10:12:22 [rx] +OK 4 21845
POP3: 10:12:22 [tx] LIST
POP3: 10:12:22 [rx] +OK
POP3: 10:12:22 [rx] 1 15171
POP3: 10:12:22 [rx] 2 2244
POP3: 10:12:22 [rx] 3 2209
POP3: 10:12:22 [rx] 4 2221
POP3: 10:12:22 [rx] .
POP3: 10:12:22 [tx] UIDL 1
POP3: 10:12:23 [rx] +OK 1 56025
POP3: 10:12:23 [tx] UIDL
POP3: 10:12:23 [rx] +OK
POP3: 10:12:23 [rx] 1 56025
POP3: 10:12:23 [rx] 2 56026
POP3: 10:12:23 [rx] 3 56027
POP3: 10:12:23 [rx] 4 56028
POP3: 10:12:23 [rx] .
POP3: 10:12:23 [tx] RETR 1
POP3: 10:12:23 [rx] +OK 15171 bytes
POP3: 10:12:24 [tx] RETR 2
POP3: 10:12:25 [rx] +OK 2244 bytes
POP3: 10:12:25 [tx] RETR 3
POP3: 10:12:25 [rx] +OK 2209 bytes
POP3: 10:12:25 [tx] RETR 4
POP3: 10:12:26 [rx] +OK 2221 bytes
POP3: 10:12:26 [tx] QUIT
POP3: 10:12:26 [rx] +OK POP3 server closing connection
Come vedi il comando UIDL da la lista dei messaggi associando ad ognuno un
numero d'ordine (credo progressivo dal momento della creazione della mailbox
da parte del provider). Io mi baserei su questo per creare del codice per
riconoscere i post nuovi dai vecchi...
Spero ti sia d'aiuto.
Saluti
Fulcro

successive alla ricerca di ID già identificati precedentemente.
Sperando che il postmaster, contravvenendo allo standard, non abbia
simpaticamente cambiato gli identificativi dei messaggi fra una sessione e
l'altra, come pare abbia fatto 
tin.it
 ieri nella mia casella postale.
Comunque, nell'ambito del protocollo POP3, non c'è altra strada.
E ovviamente questa non può essere quella utilizzata dai mail reader web
oriented, dovendo basarsi su una lista degli identificativi mantenuta
presso l'utente.
Il protocollo IMAP4 fornisce più informazioni, e potrebbe essere la base
per un funzionamento coerente di un mail reader web oriented, ma è
probabile che, per questioni di efficienza, venga invece utilizzata qualche
connessione diretta col database messaggi.
Ciao.