Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / C++ [игнор отключен] [закрыт для гостей] / Как отправить файл на электронный адрес? / 12 сообщений из 12, страница 1 из 1
02.03.2007, 14:19
    #34366802
egghead
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как отправить файл на электронный адрес?
Привет!

Подскажите как отправить файл по почте(адрес известен)?

Заранее спасибо!
...
Рейтинг: 0 / 0
02.03.2007, 16:34
    #34367509
Lexogen
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как отправить файл на электронный адрес?
Файл кодируется в BASE64 и с помощью любого, доступного Вам компонента(класа) отправляется с помощью протокола SMTP.

P.S. Какой вопрос, такой ответ.
...
Рейтинг: 0 / 0
02.03.2007, 21:47
    #34368352
Lepsik
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как отправить файл на электронный адрес?
LexogenФайл кодируется в BASE64 и с помощью любого, доступного Вам компонента(класа) отправляется с помощью протокола SMTP.

P.S. Какой вопрос, такой ответ.

а как же дрыгие протоколы ? IMAP4 например ?
...
Рейтинг: 0 / 0
03.03.2007, 00:03
    #34368458
Изопропил
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как отправить файл на электронный адрес?
Какой-такой протокол :)
пример с cdosys -
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
#import "c:\program files\common files\system\ado\msado15.dll" no_namespace rename("EOF","ADOEOF")
#import <cdosys.dll> no_namespace 

void send(_TCHAR* pFrom,_TCHAR* pTo,_TCHAR* pSubject,_TCHAR* pBody,_TCHAR* fName,_TCHAR* contentType)throw(_com_error)
{ 
   IMessagePtr iMsg(__uuidof(Message)); 
   FieldsPtr BFlds;
   IBodyPartPtr iBpf;
   _StreamPtr   Stm;

   BFlds = iMsg->Fields;
   BFlds->Item[cdoTo]->Value      = pTo; 
   BFlds->Item[cdoFrom]->Value    = pFrom; ;
   BFlds->Item[cdoSubject]->Value = pSubject; 
   BFlds->Item[cdoTextDescription]->Value = pBody; 
   BFlds->Update();
   iBpf= iMsg->BodyPart->AddBodyPart(- 1 );
   iBpf->ContentMediaType = contentType;
   iBpf->ContentTransferEncoding = "base64";
   Stm = iBpf->GetDecodedContentStream();
   Stm->LoadFromFile(fName);
   Stm->Flush();
   iMsg->Send();
}
...
Рейтинг: 0 / 0
03.03.2007, 00:14
    #34368466
A. Fig Lee
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как отправить файл на электронный адрес?
Lepsik LexogenФайл кодируется в BASE64 и с помощью любого, доступного Вам компонента(класа) отправляется с помощью протокола SMTP.

P.S. Какой вопрос, такой ответ.

а как же дрыгие протоколы ? IMAP4 например ?

ето из совсем другой оперы. ето для доступа к фолдерам не для пересылки емейлов.
...
Рейтинг: 0 / 0
03.03.2007, 10:23
    #34368611
Aklin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как отправить файл на электронный адрес?
A. Fig Lee Lepsik LexogenФайл кодируется в BASE64 и с помощью любого, доступного Вам компонента(класа) отправляется с помощью протокола SMTP.

P.S. Какой вопрос, такой ответ.

а как же дрыгие протоколы ? IMAP4 например ?

ето из совсем другой оперы. ето для доступа к фолдерам не для пересылки емейлов.

по-моему, MIME точно надо...
...
Рейтинг: 0 / 0
05.03.2007, 10:20
    #34370483
egghead
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как отправить файл на электронный адрес?
Да, наверное нечетко описал задачу. Но сам сначала не до конца понял, как это реализуется.
Задача у меня такая. Есть данные почтового сервера. Есть файл Word, который нужно переслать на адрес эл.почты, который ввел пользователь. С помощью MIME насколько я понял нельзя просто так переслать один вордовский файл? Или я ошибаюсь?
...
Рейтинг: 0 / 0
05.03.2007, 10:31
    #34370515
Aklin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как отправить файл на электронный адрес?
eggheadДа, наверное нечетко описал задачу. Но сам сначала не до конца понял, как это реализуется.
Задача у меня такая. Есть данные почтового сервера. Есть файл Word, который нужно переслать на адрес эл.почты, который ввел пользователь. С помощью MIME насколько я понял нельзя просто так переслать один вордовский файл? Или я ошибаюсь?

насколько я понимаю, MIME - маханизм присоединения файла.
далее SMTP
...
Рейтинг: 0 / 0
05.03.2007, 10:55
    #34370597
egghead
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как отправить файл на электронный адрес?
С этим понял, спасибо.
А вот тут у меня некоторые сложности с импортом cdosys.dll (.Net2003)
при компиляции выдает следующую ошибку
...\Debug\cdosys.tlh(277): error C2440: 'initializing' : cannot convert from 'unsigned short *' to 'const BSTR'
Думаю, что нужно при импорте что-то написать. Может у кого то есть идеи?
...
Рейтинг: 0 / 0
07.03.2007, 12:57
    #34377210
cap83
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как отправить файл на электронный адрес?
Попробуй добавить преобразование типов руками ... Проект должен опять не собраться и сказать что файл .tlh усторел а ты нажимай сохранить и еще раз собирай проект со 2ого 3его раза собирется ))

---------------------------------------------------

...
Рейтинг: 0 / 0
09.03.2007, 10:09
    #34379746
egghead
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как отправить файл на электронный адрес?
Я нашел полноценный пример c MAPI:
http://www.codeguru.com/cpp/i-n/network/messaging/print.php/c5417/

но он исползует для отправки OutlookExpress.
Может кто-то знает, как изменить отправителя на Bat. т.е. сам принцип работы этого кода я понял.
т.е. используется outlook в виде com-сервер-a. А сейчас хочу эту задачу адаптировать под Bat. Или может кто-то подскажет более легкие способы отправки файлов клиентов BAT по электронке?
...
Рейтинг: 0 / 0
09.03.2007, 17:55
    #34381230
A. Fig Lee
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как отправить файл на электронный адрес?
eggheadЯ нашел полноценный пример c MAPI:
http://www.codeguru.com/cpp/i-n/network/messaging/print.php/c5417/

но он исползует для отправки OutlookExpress.
Может кто-то знает, как изменить отправителя на Bat. т.е. сам принцип работы этого кода я понял.
т.е. используется outlook в виде com-сервер-a. А сейчас хочу эту задачу адаптировать под Bat. Или может кто-то подскажет более легкие способы отправки файлов клиентов BAT по электронке?

отправить - не проблема. Можно вручную на коленке почитав RFC SMTP забацать за пол-дня клиента.
Проблема больше с подготовкое емейла - надо закодировать файл и сгенерить сам месседж.
...
Рейтинг: 0 / 0
Форумы / C++ [игнор отключен] [закрыт для гостей] / Как отправить файл на электронный адрес? / 12 сообщений из 12, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]