Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
Посмотрел (точнее попытался посмотреть) твой пример - он вообще не собрался. И абсолютно правильно.
1. В функциях PopInitialize() и PopConnect() не правльное кол-во параметров - см. описание прототипов этих функций в файле заголовков.
2. Соответственно могу только предположить, что если у тебя этот проект собирается - проблемы с доступом к LIB файлам (ты из программы вообще не "видишь" функции DLL библиотеки).
Далее он виснет после первого обращения к библиотеке ...
LIB файлы нужно создать из соответствующих DLL с помощью LIBMaker'а и не забыть удалить первую строку в списке функций для каждого LIB. Для программ на Clarion'e стандартные LIB из комплекта Catalyst Tools - не подойдут, они для C и VB.
3. Зачем изобретать все заново ? Если тебе не нравиться мой пример на Clarion (чем ?) - возьми пример на VC из SAMPLES и перепиши на клару ... Но название функций библиотеки и кол-во параметров для них не зависит от языка ...
P/S: LIB файлы для доступа к SMTP, POP3 и MIME из Clarion'а прилагаются, сбрось их в папку с программой вместе с одноименными DLL и включи в проект своего приложения.
Разобрался...
Я подумал, что если на С++ в процдуру передается null, то это аналогично пропущенному параметру в Clarion и, соответственно, подправил прототипы.
Похоже отсюда все растет.
Нет - не согласен. NULL в параметре при вызове функции - это указание на отсутствие адреса переменной. Как минимум - функция может сама выделить память для переменной и полученный адрес вернуть в точку вызова. Попробуй сделать такой номер с пропущенным параметром ...
Кто использует Catalist для отправки писем, не сталкивался ли с проблемой русских букв в заголовке письма. Сколько не искал, не смог ничего сделать. а проблема в том, что и имя отправителя и тема в iso-8859-1, хотя:
Content-Type: text/plain; charset=iso-8859-5
Все это хорошо видно при показе заголовков. Интересно, что Bat версии 2.01 отображает нормально, а версии 3.5 нет.