Al momento sei offline in attesa che la connessione Internet venga ristabilita

Automazione di Outlook mediante Visual Basic

Il supporto per Office 2003 è terminato

Il supporto Microsoft per Office 2003 è terminato l Ulteriori informazioni su come continuare a essere protetti.

Sommario
In questo articolo viene spiegato come controllare Microsoft Outlook a livello di codice utilizzando la funzionalità di automazione di Visual Basic. Nell'esempio vengono illustrate le procedure di creazione di contatti, creazione di appuntamenti e invio di messaggi mediante il modello oggetti di Microsoft Outlook.
Informazioni
Per creare ed eseguire l'esempio, attenersi alla procedura descritta di seguito. Per eseguire l'esempio, è necessario un riferimento ad associazione anticipata a una libreria di tipi di Microsoft Outlook. Nella tabella seguente sono elencati i nomi file delle librerie di tipi per le varie versioni di Microsoft Outlook:
Versione di OutlookIdentificazione della libreria di tipi nell'elenco di riferimentiNomefile
Outlook 97"Libreria oggetti di Microsoft Outlook 8.0"msoutl8.olb
msoutl8.olb"Libreria oggetti di Microsoft Outlook 98"msoutl85.olb
Outlook 2000"Libreria oggetti di Microsoft Outlook 9.0"msoutl9.olb
Outlook 2002"Libreria oggetti di Microsoft Outlook 10.0"msoutl.olb
Office Outlook 2003"Libreria oggetti di Microsoft Outlook 11.0"msoutl.olb

Creazione del modello di automazione

  1. Avviare Visual Basic e creare un nuovo progetto EXE standard.
  2. Scegliere Riferimenti dal menu Progetto e selezionare Microsoft Outlook.
  3. Aggiungere un pulsante al form.
  4. Fare doppio clic sul pulsante, quindi aggiungere il seguente codice:
    ' Start Outlook.  ' If it is already running, you'll use the same instance...      Dim olApp As Outlook.Application  Set olApp = CreateObject("Outlook.Application")' Logon. Doesn't hurt if you are already running and logged on...      Dim olNs As Outlook.NameSpace  Set olNs = olApp.GetNamespace("MAPI")  olNs.Logon   ' Create and Open a new contact.     Dim olItem As Outlook.ContactItem      Set olItem = olApp.CreateItem(olContactItem)   ' Setup Contact information...      With olItem            .FullName = "James Smith"     .Birthday = "9/15/1975"           .CompanyName = "Microsoft"           .HomeTelephoneNumber = "704-555-8888"         .Email1Address = "someone@microsoft.com"            .JobTitle = "Developer"           .HomeAddress = "111 Main St." & vbCr & "Charlotte, NC 28226"      End With      ' Save Contact...      olItem.Save       ' Create a new appointment.      Dim olAppt As Outlook.AppointmentItem      Set olAppt = olApp.CreateItem(olAppointmentItem)      ' Set start time for 2-minutes from now...      olAppt.Start = Now() + (2# / 24# / 60#)      ' Setup other appointment information...      With olAppt            .Duration = 60           .Subject = "Meeting to discuss plans..."            .Body = "Meeting with " & olItem.FullName & " to discuss plans."            .Location = "Home Office"            .ReminderMinutesBeforeStart = 1            .ReminderSet = True      End With       ' Save Appointment...      olAppt.Save       ' Send a message to your new contact.      Dim olMail As Outlook.MailItem      Set olMail = olApp.CreateItem(olMailItem)  ' Fill out & send message...      olMail.To = olItem.Email1Address      olMail.Subject = "About our meeting..."     olMail.Body = _                "Dear " & olItem.FirstName & ", " & vbCr & vbCr & vbTab & _                "I'll see you in 2 minutes for our meeting!" & vbCr & vbCr & _                "Btw: I've added you to my contact list."      olMail.Send       ' Clean up...      MsgBox "All done...", vbMsgBoxSetForeground      olNS.Logoff      Set olNs = Nothing      Set olMail = Nothing      Set olAppt = Nothing      Set olItem = Nothing      Set olApp = Nothing
  5. Eseguire il progetto, quindi fare clic sul pulsante per eseguire il codice.
Dopo l'esecuzione del codice, dovrebbe essere presente un nuovo contatto denominato "James Smith", dovrebbe essere stato pianificato un appuntamento dopo due minuti con un promemoria che verrà visualizzato dopo un minuto e dovrebbe essere stato inviato un messaggio a someone@microsoft.com. Essendo inoltre stata aggiunta la data di compleanno del contatto (15/09), è stato aggiunto un evento ricorrente per il Calendario di Outlook come promemoria di questo giorno.

In Outlook 2002 sono state aggiunte due nuove finestre di dialogo: in una viene visualizzato un messaggio di avviso indicante che un programma sta tentando di accedere agli indirizzi di posta elettronica memorizzati in Outlook e in cui si richiede di confermare questa operazione e nell'altra viene visualizzato un messaggio indicante che un programma sta tentando di inviare posta elettronica. Questa funzionalità impedisce ai virus di inviare posta elettronica dal sistema all'insaputa dell'utente.

Per ulteriori informazioni, fare clic sul numero dell'articolo della Microsoft Knowledge Base riportato di seguito:
290500 Descrizione delle caratteristiche di protezione della posta elettronica per sviluppatori in Outlook 2002
Riferimenti
Per ulteriori informazioni sulle risorse di programmazione di Outlook, fare clic sui numeri degli articoli della Microsoft Knowledge Base riportati di seguito:
166368 Risorse per la personalizzazione di form e la programmazione in Outlook 97
180826 Risorse per la personalizzazione di form e la programmazione in Outlook 98
271225 Risorse per la personalizzazione di form e la programmazione in Outlook 2000
287531 OL2002: Risorse per la creazione di moduli personalizzati e la programmazione
313802 Recupero di contatti mediante il modello oggetti di Outlook in Visual Basic .NET
313788 Creazione di appuntamenti mediante il modello oggetti di Outlook in Microsoft Visual Basic .NET
Proprietà

ID articolo: 220595 - Ultima revisione: 02/02/2006 18:33:00 - Revisione: 9.0

  • Microsoft Visual Basic 6.0 Enterprise Edition
  • Microsoft Visual Basic 5.0 Learning Edition
  • Microsoft Visual Basic 6.0 Learning Edition
  • Microsoft Visual Basic 5.0 Professional Edition
  • Microsoft Visual Basic 6.0 Professional Edition
  • Microsoft Visual Basic 5.0 Enterprise Edition
  • Microsoft Office Outlook 2003
  • Microsoft Outlook 2002 Standard Edition
  • Microsoft Outlook 2000 Standard Edition
  • Microsoft Outlook 97 Standard Edition
  • Microsoft Outlook 98 Standard Edition
  • kbhowto kboutlookobj kbautomation KB220595
Feedback