powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / Как отправить файл на электронный адрес?
12 сообщений из 12, страница 1 из 1
Как отправить файл на электронный адрес?
    #34366802
egghead
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Привет!

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

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

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

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

а как же дрыгие протоколы ? IMAP4 например ?
...
Рейтинг: 0 / 0
Как отправить файл на электронный адрес?
    #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
Как отправить файл на электронный адрес?
    #34368466
A. Fig Lee
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Lepsik LexogenФайл кодируется в BASE64 и с помощью любого, доступного Вам компонента(класа) отправляется с помощью протокола SMTP.

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

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

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

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

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

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

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

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

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

...
Рейтинг: 0 / 0
Как отправить файл на электронный адрес?
    #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
Как отправить файл на электронный адрес?
    #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
12 сообщений из 12, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / Как отправить файл на электронный адрес?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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