Поддержка MAPI в MFC
Поддержка MFC предоставляет для подмножества интерфейса (MAPI) программы приложения обмена сообщениями Microsoft в классе CDocument. В частности, CDocument имеет функций-членов, определяющие наличия поддержка почты на компьютере пользователя и, если да, содержит команду, для отправки Почты, идентификатор стандартной команды ID_FILE_SEND_MAIL. Функции обработчика MFC для этой команды позволяет пользователю отправить документ по электронной почте.
Совет
Хотя MFC не инкапсулирует полный набор функций MAPI, можно по-прежнему MAPI вызова функции напрямую, как и функции api-интерфейса Win32 можно непосредственно из программ MFC.
Защита команды для отправки Почты в приложении является очень простым. MFC предоставляет реализацию пакет документ (то есть CDocument- производного объекта) в качестве вложения и отправляет их как электронную почту. Это вложения эквивалентен команде сохранения файла для сохранения (сериализует) содержимое документа к почтовому сообщению. Вызовы этой реализации, на клиенте почты на компьютере пользователя, чтобы дать пользователю возможность адресации сообщения и добавление текста и темы сообщения к почтовому сообщению. Пользователи видят их знакомого интерфейса пользователя приложения электронной почты. Эта функция реализована в 2 функции-членами CDocument : OnFileSendMail и OnUpdateFileSendMail.
MAPI читает файл отправлять вложения. Если приложение сохраняет его файл данных открытым во время вызова функции OnFileSendMail, файл должен быть раскрытым с режимом общей папки, позволяющий несколько процессов для доступа к файлу.
Примечание
При переопределении версия OnFileSendMail для класса COleDocument правильно обрабатывает составных документов.
Реализация команды для отправки Почты с MFC
Используйте редактор меню Visual C++ для добавления пункт меню, идентификатор команды ID_FILE_SEND_MAIL.
Это идентификатор команды предоставляется средой выполнения в AFXRES.H. Команду можно добавить к любому меню, но она обычно добавляется в меню Файл.
Вручную добавьте в схеме документа: сообщений.
ON_COMMAND(ID_FILE_SENDMAIL, &CMyDoc::OnFileSendMail) ON_UPDATE_COMMAND_UI(ID_FILE_SENDMAIL, &CMyDoc::OnUpdateFileSendMail)
Примечание
Эта схема сообщений работает для документа, производного от CDocument или COleDocument — она выбирает вверх правильный базовый класс в любом случае, даже если схема сообщений в производном классе документа.
Постройте приложение.
Если поддержка почты доступна, MFC содержит созданный пункт меню с OnUpdateFileSendMail и затем процессами команду с OnFileSendMail. Если поддержка почты недоступна, MFC автоматически удаляет созданный пункт меню, чтобы пользователь не увидит его.
Совет
Вместо вручную добавление записи сопоставления сообщений, как описано выше, можно использовать окно " Свойства класса сопоставления сообщения к функциям.Дополнительные сведения см. в разделе Сопоставление сообщений с функциями.
Дополнительные сведения см. в разделе MAPI.
Дополнительные сведения о функции-члены CDocument, включающих MAPI, см. в разделе: