Utilizzo della libreria CDOSYS per l'invio di email con Asp

Siti dinamici con ASP
Impara a creare siti dinamici professionali con ASP

Scritto da Luca Ruggiero nella sezione Asp

La nuova versione del famoso server Web della Microsoft è arrivato alla versione 6: abbiamo quindi IIS6. Tra le varie migliorie apportate, tra cui la configurazione in Xml ed una migliore gestione della cache del server stesso, è stato introdotto un nuovo componente che ha sostituito il buon vecchio CDONTS.

L'utilizzo di questo nuovo componente per la realizzazione di un form-mail o di altri servizi che sfruttano l'invio di email per vari scopi, non cambiano di una virgola, se non per pochissime sottigliezze. In questo Tip le analizzeremo nel dettaglio.

Prima cosa che cambia è l'instanziamento del componente per la creazione dell'oggetto che sfrutteremo per l'invio della mail; abbandoniamo la collezione CDONTS.NewMail per l'utilizzo della nuova collezione CDO.Message:

var oggetto_email = new ActiveXObject("COD.Message");
Altra piccole differenze consiste nel fatto che l'invio del corpo della mail non utilizza più la proprietà Body, ma è stata creata una differenziazione per la formattazione della mail in formato Html; le nuove proprietà, i cui nomi sono esplicativi, sono TextBody e HTMLBody: quest'ultima esegue in automatico la conversione del codice Html e lo restituisce in output già formattato e non più come stringa; non è più necessario, infatti, il settagio del tipo MIME.

Tanto per iniziare a farvi spratichire, copiate in maniera dogmatica il seguente codice ed includetelo in un file .asp di test:
<%@LANGUAGE = JScript%>
<%
    try
    {
        var oggetto_email = new ActiveXObject("CDO.Message");
            with (oggetto_email)
            {
                To = "destinatario@account.ext";
                From = "mittente@account.ext";
                Subject = "Benvenuto CDOSYS!";
                TextBody = "Speriamo di trovarci bene insieme :-)";
                Send();
            }
        Response.Write("Email inviata con successo!");
    }
    catch (e)
    {
        Response.Write("Impossibile creare l'oggetto!");
    }
%>
Per formattare il corpo della mail in Html sarà sufficiente sostituire la riga del TextBody con la seguente:
HTMLBody = "<b>Speriamo di trovarci bene insieme :-)</b>";
Altra differenza è nel metodo per l'invio di allegati, e solo nella nomenclatura: AttachFile() diventa AddAttachment().

I più cliccati della sezione Asp

:: Un semplice form mail in Asp (51.682)

:: Creazione di un Guestbook in Asp (50.782)

:: Creazione di un'area di accesso riservato in Asp (45.422)

:: Connessione ad un database MySql con Asp (25.044)

:: Connessione ad un database Microsoft SQL Server con Asp (24.069)

:: Asp e database (23.123)

:: Differenza tra i metodi get e post e recupero dei dati, attraverso Asp (22.300)

:: Una semplice area di accesso riservato senza DB in Asp (21.383)

:: Riscrivere le URL con Asp (19.743)

:: Creazione di un Sondaggio in Asp (19.100)

IN EVIDENZA
DOWNLOAD