Страница 2 из 3
Добавлено: 12 Ноябрь 2005, 1:45
NewUser
А я так и не получил....

Добавлено: 12 Ноябрь 2005, 13:51
ru_alex
Вопрос наверное скорее к Игорю Столярову, но выношу на общее обсуждение...
Разбираю пример отправки писем по SMTP, собираю такой же на Кларе. Застопорился на функции:
BOOL MimeExportMessageEx(
HMESSAGE hMessage, // handle to the message
DWORD dwExportMode, // export mode
DWORD dwExportOptions, // export options
LPVOID lpvMessage, // pointer to buffer to contain the message
LPDWORD lpdwMessageSize // pointer to buffer size
);
В клареона описана так:
MimeExportMessageEx(LONG hMessage, LONG dwExportMode, LONG dwExportOptions,*CSTRING lpMessage, *LONG lpdwMessageSize),LONG,PASCAL,RAW,NAME('MimeExportMessageExA')
а точнее на параметре lpvMessage. Я так понимаю в эту переменную и должно заносится собственно письмо, но не заносится...

и соответственно писмо приходит кривое, без темы и содержания.
Игорь, если есть время и возможность, выложи код на кларионе отправки письма, а лучше и получения по POP3 тоже...

Добавлено: 12 Ноябрь 2005, 14:02
Игорь Столяров
По отправке почты: в архиве ClarionLife есть прекрасный рабочий пример: "Библиотека для отправки сообщений по SMTP с использованием формата MIME (Дмитрий Осипов)". Работает без всяких внешних библиотек - только Clarion и C код. Посмотри.
По приему и разборке почты с помощью Catalyst SoketTools Library - постараюсь выдрать кусок кода и сброшу его тебе на e-mail. Хотя еще раз повторюсь: в описании к библиотеки есть все функции и примеры их использования С - все очень прозрачно и понятно ...
Добавлено: 12 Ноябрь 2005, 23:02
NewUser
Игорь, и мне сбросьте, пожалуйста! Очень надо принимать и разбирать почту!!!!
ProgramMaker@mail точка ru
Добавлено: 15 Ноябрь 2005, 13:08
ru_alex
Собрал я пример отправки почты на С55 с использованием функций этой библиотеки. Письма оправляются, но есть загвоздка...
Если пример создан без использования клашиного окна (ну типа заполнить все параметры в коде и вызвать соответствующие методы отправки) то все ОК, если же открыть диалоговое окно для заполнения письма, то после отправки письма программа вылетает с недопустимой ошибкой на следующем витке ACCEPT цикла. Империческим путем выяснил: вылетает если вызывается метод SmtpConnect.
Конечно в код функции самой библы не влезешь, но может быть есть некие различия между окнами на Clarion и С++ или еще в чем-то, пример-то на VC7 работает без проблем...
ЗЫ: Я в курсе, что есть рабочие примеры для Clarion по отправке почты, но хочется определиться с целесообразностью использования самой библиотеки, и не только для Smtp.
ЗЫ2: По приему писем та же история, после вызова PopConnect

Добавлено: 17 Ноябрь 2005, 12:58
Гость
А на
job_cw@mail.ru можно, порциями?
Добавлено: 26 Ноябрь 2005, 15:51
Игорь Столяров
> Собрал я пример отправки почты на С55 с использованием функций > этой библиотеки. Письма оправляются, но есть загвоздка...
Я не использовал Catalyst для отправки почты по SMTP.
Только прием по POP3 и разбор сообщений MIME.
Проблем использования из Clarion'а нет.
Если сбросишь в форум процедуру отправки по SMTP - попробую погонять, может что и проясниться ...
Добавлено: 27 Ноябрь 2005, 13:41
Гость
Ага ! Если не жалко

покажите кусок кода по подключению и отправке письма через SMTP через Catalyst Socket Tools - если есть удачный опыт. Пожалуйста !
Прием по POP3 от Игоря работает на ура, да и в хелпе на C он прозрачно написан, а вот с отправкой беда - не удается впихнуть имя логина и пароль SMTP-серверу, хоть тресни ...
Спасибо ...

К гостю
Добавлено: 27 Ноябрь 2005, 14:46
Михаил
Может удастся переслать и CATALYSTA и пример приёма почты на Clare?
С уважением Михаил.
Добавлено: 27 Ноябрь 2005, 16:19
Гость
Кратко для тех, кто проспал первую часть балета.
Catalyst можно скачать с этого форума, а примеры работы с POP3, лично я уже переслал раз десять. Если проблемы с почтой - смените провайдера. Там, кто-то писал что ему письмо с библиотекой неделю шло ...

, что еще можно к этому добавить ?
Добавлено: 28 Ноябрь 2005, 9:41
Игорь Столяров
Полностью рабочий код отправки сообщения через SMTP:
- описания переменных, констант и функций берем из библиотеки;
- назначение переменных - понятно из их наименования;
- обработку ошибок, для краткости - убрал;
- это перевод примера с VB6 (правда они "забыли" в нем показать передачу пароля на сервер - в этом и был основной затык);
- предполагаю, что MIME сообщение (т.е. сам e-mail) уже создано и записано в файл;
- Далее:
If SmtpInitialize(CSTOOLS4_LICENSE_KEY, 0) <> False
hClient = SmtpConnect(strRemoteHost,nRemotePort,60,SMTP_OPTION_EXTENDED,strLocalDomain,0)
If hClient <> INVALID_CLIENT
If SmtpAuthenticate(hClient,SMTP_AUTH_DEFAULT,strUserName,strPassword) <> SMTP_ERROR
FileMail = 'ПОЛНОЕ имя файла с сформированным MIME сообщением'
nResult = SmtpSendMessage(hClient,strFrom,strTo,FileMail,dwMessageSize,SMTP_MESSAGE_FILE)
iConnect# = SmtpDisconnect(hClient2)
end
end
SmtpUnInitialize()
end
Все - идите всречайте Ваше письмо ...

Добавлено: 28 Ноябрь 2005, 9:48
ru_alex
Выкладываю пример по приему почты.
Вылетает сколько не бился.
Так как все говорят "все прекрасно", наверное очевидного не вижу.
Проверте, плиз...
PS^ Если в примере закоментировать код от Open(Window) до Close(Window), то все равно вылетает. Просто не знаю на что думать

Добавлено: 28 Ноябрь 2005, 9:59
Игорь Столяров
А ты мой пример приема и разбора почты по POP3 получал ?
Работает давно в нескольких крупных системах - вообще без проблем.
Будет немного времени - я распишу как предыдущий пример по SMTP и выложу сюда же ...
Добавлено: 28 Ноябрь 2005, 10:03
ru_alex
Пример не получал, может со спамом вычистил

Добавлено: 28 Ноябрь 2005, 10:09
Игорь Столяров
Давай мыло - повторю. В форум кидать не хочу, т.к. это просто выдранный кусок из рабочей программы - начнуться вопросы, а почему то, а почему се ...
Когда оформлю красиво - тогда можно будет и показать здесь ...
