Страница 1 из 1

Отравить файл

Добавлено: 24 сен 2005, 15:43
ikol
Люди, подскажите как из VB отправить письмо с файлом или просто файл на E-mail , желательно без использования почтовых клиентов!

Добавлено: 24 сен 2005, 22:15
Naeel Maqsudov
Чтобы без почтовых клиентов, тогда надо сначала изучить вот это http://www.ietf.org/rfc/rfc0821.txt потом (это для аттачментов) еще....
О! вот нашел хорошую ссылку: http://debianlinux.net/~jama/rfc/smtp.html тут вся подборка.

Ну а затем, нужно научиться создавать сокетное соединение по указанному IP и порту и отправлять в это соединение текстовые строки.

Далее нужно используя все это самому написать половину почтового клиента, который будет кодировать двоичный файл в MIME, потом формировать тело письма, а потом подключаться к почтовому серверу и отправлять ему SMTP команды для входа и отправки. А также анализировать ответы почтового сервера на каждую из отправленных команд.

Все это не выглядит как задача уровня VB, однако сделать можно. Времени уйдет на это - ваг... Нет, не знаю сколько вагонов.

Добавлено: 25 сен 2005, 01:07
ikol
Мне говорили про Freemail.dll, что с помощью неё можно это сделать, но толком не объяснили как. Вам что-нибудь известо об этой dll?

Добавлено: 25 сен 2005, 12:55
Naeel Maqsudov
Видимо, она содержит реализацию всего вышеописанного.
Этот "велосипед" мне не попадался, ничего о нем не слышал.
К DLL, экспортирующей полезные функции должен прилагаться хотябы .h-файл с заголовками функций. Этот файл можно перевести с С на VB - получится сколько-то строчек Declare.
Если эту DLL перед использованием надо регистрировать командой regsvr32 freemail.dll то дело обстоит гораздо лучше. Зарегистрируйте, подключите к проекту и ObjectBrowser в VB покажет Вам завернутый в нее класс и все его свойства и методы.

Удачи.

Добавлено: 25 сен 2005, 16:03
AiK
Есть Гугль. Там можно задать запрос вроде command line mailer win32. Я использовал в своё время BLAT, т.к. SQL-серверный почтовик-затейник не устраивал. Алтьтернатив BLAT'у- вагон и маленькая тележка.

Добавлено: 25 сен 2005, 18:06
ikol
Другой путь- через почтовые клиенты, но как определить какой из них является активными и как отправить через него письмо/файл?
Зарание спасибо!