3.1.4.9.1 Sending a Meeting Cancellation
The organizer or delegate of the organizer sends a Meeting Cancellation object to inform attendees that they no longer need to attend the event. To send a Meeting Cancellation object, the client creates and submits a new Meeting Cancellation object. The client then copies all properties from the Meeting object to the Meeting Cancellation object, with the exception/addition of those specified in section 2.2.8.
The client modifies the sequence number, as specified in section 2.2.8.
The client sets the following on the Meeting Cancellation object:
All the bits in the value of the PidLidAppointmentStateFlags property (section 2.2.1.10) that are set in this value on the Meeting object, and the asfReceived and asfCanceled bits.
The value of the PidLidResponseStatus property (section 2.2.1.11) to "respNotResponded" (0x00000005).
The value of the PidLidIntendedBusyStatus property (section 2.2.6.4) to "olFree" (0x00000000).
The value of the PidLidBusyStatus property (section 2.2.1.2) to "olFree".
The value of the PidLidFExceptionalAttendees property (section 2.2.2.3) to FALSE.
The value of the PidLidFExceptionalBody property (section 2.2.10.2.6) to FALSE.
The PidTagProcessed property (section 2.2.5.7) MUST NOT be set.
The value of the PidTagSubjectPrefix property ([MS-OXCMSG] section 2.2.1.9), as specified in section 2.2.8.1.
The following optional properties are also set on the Meeting Cancellation object:
PidLidAllAttendeesString (section 2.2.1.16).
PidLidToAttendeesString (section 2.2.1.17).
PidLidCcAttendeesString (section 2.2.1.18).
PidTagStartDate (section 2.2.1.30).
PidTagEndDate (section 2.2.1.31).
If the user has not modified the value of the PidLidReminderDelta property ([MS-OXORMDR] section 2.2.1.3) from its default value (as defined by the client), the value of this property SHOULD be set to the LONG value ([MS-DTYP]) 0x5AE980E1.
After successfully sending a Meeting Cancellation object, the client modifies the Meeting object in the organizer's Calendar folder:
Set the value of the PidLidToAttendeesString property equal to the value that was set on the Meeting Cancellation object.
Set the value of the PidLidCcAttendeesString property equal to the value that was set on the Meeting Cancellation object.
Set the ciCanceled bit of the PidLidClientIntent property (section 2.2.2.4) of the Meeting object.
If the Meeting object represents an exception to a recurring series, set the ciExceptionCanceled bit of the PidLidClientIntent property of the Meeting object that represents the recurring series for the exception.