Appointment CoClass
Topic Last Modified: 2006-06-13
Defines appointments, and provides methods and properties for sending, responding to, and managing them.
CLSID
CD000100-8B95-11D1-82DB-00C04FB1625D
ProgID
CDO.Appointment
Type Library
Microsoft CDO for Exchange 2000 Library
Inproc Server
CDOEX.DLL
Threading Model
Both
Implemented Interfaces
Supported Bindings
The following table lists IDataSource interface bindings.
Method | Target Argument | Content Class |
---|---|---|
Open |
Exchange store item URL |
urn:content-classes:appointment |
OpenObject |
IRow _Record IStream _Stream IBodyPart |
urn:content-classes:appointment |
SaveTo |
Exchange store item URL |
N/A |
SaveToContainer |
Exchange store folder URL |
N/A |
SaveToObject |
IRow _Record IStream _Stream IBodyPart |
N/A |
Remarks
The IAppointment interface is used for creating appointments and for sending and responding to meeting requests. It contains methods that create a CalendarMessage CoClass object for encapsulating meeting requests and responses as a message. The CalendarMessage object provides access to the IMessage interface for Send and other methods. It also provides access to the ICalendarParts interface, which filters a message for body parts containing calendar content.
The IDataSource interface facilitates opening data from and saving data to other objects. The IBodyPart interface acts as the root of the hierarchy of Multipurpose Internet Mail Extensions (MIME) body parts in the message.
You can also use the Appointment object's GetNextInstance and GetFirstInstance methods to examine a recurring appointment. Use the Publish method to send an announcement of the meeting to recipients who need not respond.
Example
Function CreateAndSendMeeting(iMbx As CDO.IMailbox) As CDO.Appointment
Dim iAppt As New Appointment
Dim Config As New Configuration
Dim iCalMsg As CalendarMessage
Dim iAttn1 As Attendee
Dim iMsg As CDO.Message
' Set the configuration fields.
Config.Fields("CalendarLocation") = iMbx.Calendar
Config.Fields(cdoSendEmailAddress) = "meetingorganizer@example.com"
Config.Fields.Update
With iAppt
Set .Configuration = Config
' Set the appointment properties.
.StartTime = #8/20/1999 10:00:00 AM#
.EndTime = #8/20/1999 11:30:00 AM#
.Subject = "Department meeting"
.Location = "Executive Conference Room"
' Add a required attendee.
Set iAttn = .Attendees.Add
iAttn.Address = "MAILTO:someone@example.com"
iAttn.Role = cdoRequiredParticipant
' Add an optional attendee.
Set iAttn = .Attendees.Add
iAttn.Address = "MAILTO:another@example.com"
iAttn.Role = cdoOptionalParticipant
' Create the calendar message and send it.
Set iCalMsg = .CreateRequest
Set iMsg = iCalMsg.Message
iMsg.Send
' Save the meeting to the calendar of the organizer.
.Datasource.SaveToContainer iMbx.Calendar
End With
Set CreateAndSendMeeting = iAppt
End Function