Something like this (not tested):
// Recipients are not zero indexed, start with one
for (int i = 1; i < appointment.Recipients.Count - 1; i++)
{
string email = GetEmailAddressOfAttendee(appointment.Recipients[i]);
}
// Returns the SMTP email address of an attendee. NULL if not found.
function GetEmailAddressOfAttendee(Recipient TheRecipient)
{
// See http://msdn.microsoft.com/en-us/library/cc513843%28v=office.12%29.aspx#AddressBooksAndRecipients_TheRecipientsCollection
// for more info
string PROPERTY_TAG_SMTP_ADDRESS = @"http://schemas.microsoft.com/mapi/proptag/0x39FE001E";
if (TheRecipient.Type == (int)Outlook.OlMailRecipientType.olTo)
{
PropertyAccessor pa = TheRecipient.PropertyAccessor;
return pa.GetProperty(PROPERTY_TAG_SMTP_ADDRESS);
}
return null;
}