| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Общие вопросы > Outlook Express |
| Автор: mrBlood 4.6.2002, 09:48 |
| Здравствуйте! При написании своей программы столкнулся со следующей проблемой. Нужно из программы отправить письмо с прицепленным к нему файлом через установленный по умолчанию почтовый клиент. Эта функция должна работать по возможности через любые почтовые программы. Через ShellExecute насколько я понимаю прицепить файл нельзя. Пробовал через MAPI. Долго переписывался с Еленой Филиповой из Королевства Делфи по этому поводу. В конце концов выяснилось, что через MAPI Outlook Express работать не хочет. Не подскажет ли кто как решить мою проблему? Если можно то пришлите пример. |
| Автор: Song 4.6.2002, 09:52 |
| Фигня всё это.. Ещё как хочет и может. http://delphi.mastak.ru/cgi-bin/faq.pl?look=1&id=988622975&n=14 http://delphi.mastak.ru/cgi-bin/faq.pl?look=1&id=988621410&n=20 |
| Автор: Vit 4.6.2002, 15:45 |
| Outlook Express ты использовать на прямую не сможешь, это точно, у него нет ни COM интерфейса(как у Outlook), ни API. У тебя есть следующие фарианты: 1) Использовать MAPI (пример привел Song в предыдущем сообщении) 2) Использовать SMTP - там все просто 3) Использовать COM интерфейс Outlook - там тоже все просто, я даже постил где-то пример 4) Писать свой SMTP Relay сервер и отсылать email напрямую, минуя любые сервера. |
| Автор: Vit 4.6.2002, 17:43 | ||
Пример с delphi.mastak.ru мне понравился(который нашел song), я решил его сюда скопировать, может кому понадобится:
|
| Автор: Song 4.6.2002, 18:20 |
| Вы его в фак скопируйте или ссылу на мастаков. |
| Автор: Vit 4.6.2002, 18:55 | ||
Я копирую все регулярно, но даю "отлежаться" кодам и ответам несколько недель в форуме на случай если кто найдет ошибки или предложит какие варианты. А по поводу прошивания ссылок на другие ресурсы - это не ко мне, это к хозяивам форума, все-таки реклама чужих ресурсов вопрос деликатного свойства. Впрочем даже если не учитывать рекламу, я за то чтобы копировать сюда полезности, вместо хранения ссылок - надежнее, ресурс в сети может исчезнуть, поменяться, поменять хостинг, URL и т.п... |
| Автор: neutrino 4.6.2002, 20:00 |
| А я, кастати, поместил на некоторых ответах (на которых, был явный автор) ссылки на места, откуда они были взяты. Уж точно ничего рекламировать не хотел. Правда некоторые авторы (тот же известный SunTexx [Song его точно знает]) просят, чтоб поместили ссылку на исходное место. Так что выбор таков: или помешать ссылку, или не помешать вообше. Если я сделал ошибку, поместив эти ссылки, то могу удалить все сообшения их содержашие. |
| Автор: Vit 4.6.2002, 20:05 |
| Если я что-то понимаю в копирайте, то на защищенной копирайтом странице должно быть указано, что информация защищена авторским правом и не может быть опубликована без ведома автора, в противном случае по-моему ссылки на источник должно быть достаточно для возможности копирования или я не прав? |
| Автор: mrBlood 5.6.2002, 09:10 |
| Спасибо всем, кто прислал ответы на мой вопрос. По поводу примера, который нашел song. Я попробовал его использовать. Во-первых, нашел в нем несколько мелких ошибок: SusUtils вместо SysUtils, ulRecerved вместо ulReserved. Во-вторых, мне не понятно назначение функции IsOnline, ее что нужно вызывать перед вызовом функции SendEmail? Кроме того на строку RASConn: TRASConn; компилятор выдает ошибку, что не знает такого класса TRASConn. Нет ли здесь тоже какой ошибки и где этот класс описан? В-третьих, попробовал наконец использовать саму функцию SendEmail: SendEmail('Фирма', '[email protected]', 'заказ', 'D:\order.txt') и получил при ее выполнении ошибку MAPI_USER_ABORT. Нашел в Инете исходники компонента для отправки e-mail через MAPI, с ним вылазиет та же самая ошибка. Что я делаю не правильно? |