Обсуждение:библиотека отправки писем из RSL по smtp (обновление)
0 (0)
Обсуждение:библиотека отправки писем из RSL по smtp (обновление) ( Обсуждение примера 03.01.2008 07:17 )
0(0)SMTP-клиент изменено название класса вместо aeTSMTP теперь TaeSMTP
POP3-клиент название класса TaePOP3
FTP-клиент название класса TaeFTP
HTTP-клиент название класса TaeHTTP
TCP-клиент название класса TaeSocket
тестировал только на 5.0 73-ей сборке.
Посмотреть пример
>> ОтветитьБольшое спасибо! ( Wega 17.01.2008 11:04 )
0(0)Жалко только, что нет более подробного описания функций/методов.
>> Ответить:) есть правда не в длм ( EpBuLaT 17.01.2008 15:31 )
5(1)руки не доходят добить, это ведь наброски на скорую руку
>> Ответить
А можно какой-нибудь пример работы с TaeHTTP? ( Wega 04.03.2008 09:21 )
1(1)Пробую по всякому - виснет. :(
>> Ответитья через недельку освобожусь и проверю ( EpByLaT 06.03.2008 07:09 )
0(0)час занят не по детски
>> Ответитьпример ( EpByLaT 11.03.2008 07:10 )
0(0)Вот рабочий пример.
Выводит тело html-документа на экран.
import aenetobj; var ob=TaeHTTP; ob.Proxy="192.168.177.4"; ob.ProxyPort=8080; ob.TimeOut=1000; ob.Get("http://mail.kz"); println(ob.Body);
>> Ответить
на 5.0.92.35 smtp не работает ( dye 06.03.2008 19:58 )
0(0)Тестировал в трехзвенке.
Метод connect() класса TaeSMTP дает ошибку "Connect Failed".
При запуске отладчика попытка просмотра объекта ob приводит к вываливанию из терминала с сообщением:
┌───────────────────────────────────────────────┐ │ RS-Bank Exception Warning │ │ Btrieve Engine is closed. Program terminated. │ └───────────────────────────────────────────────┘
Класс TaeSocket работает нормально (в трехзвенке)
>> Ответитья не предусматривал возможность использования отладчика ( EpByLaT 11.03.2008 07:13 )
0(0)но Connect Failed появляется при невозможности соединится с удаленным сервером на заданном порту для SMTP - это 25 порт.
нужно проверить соединение с самого сервера, поскольку dlm-ка серверная.
и еще есть параметры для указания прокси, но авторизации прокси нет я не делал по крайней мере.
>> ОтветитьВот как раз авторизации на прокси очень не хватает... ( Wega 11.03.2008 08:59 )
0(0)Если прокси требует авторизироваться, то по крайней мере в трехзвенке все наглухо виснет. :(
>> Ответитьно почему тогда работает ( dye 12.03.2008 12:45 )
0(0)import "..\\mac\\maclib.ext\\sample341\\aenetobj.d32"; ob=TaeSocket; ob.Host="mail"; ob.Port=25; ob.TimeOut=1000; ob.Connect(); if( ob.Connected ) println( "<< ", ob.Readln() ); ob.Writeln( "HELO hp-proliant-4.lan.icbe.ru" ); end; if( ob.Connected ) ob.Disconnect(); end;
и не работатет:
import "..\\mac\\maclib.ext\\sample341\\aenetobj.d32"; var ob=TaeSMTP; //ob.Help(); ob.Host="mail"; ob.Port=25; ob.TimeOut=1000; ob.Connect(); ob.CharSet="windows-1251"; ob.fromaddress=toANSI("yuri@icbe.ru"); ob.toaddress=toANSI("root@icbe.ru"); ob.FromName="RSL macro"; ob.text=toANSI("Письмо отправлено с помощью delphi из RSL"); if (ob.Connected) ob.SendMail(); ob.disconnect; end;
>> Ответитьmail - внутренний сервер? ( EpByLaT 12.03.2008 13:04 )
0(0)в смысле в локальной сети с компьютером где лежит длм-ка?
>> Ответитьда, сервер приложений с dlm и почтовый сервер "mail " находятся в одной подсети ( dye 12.03.2008 16:19 )
0(0)192.168.0.0/24
>> Ответитьгде то я что то недопонимаю :) ( EpByLaT 13.03.2008 08:29 )
0(0)в смысле у меня тоже длм-ка перестала работать
правда коннект проходит, но вылетает на методе SendMail хотя письмо уходит,
час разбираюсь почему
по идее, TaeSMTP прямой потомок TaeSocket
т.е. при вызове метода TaeSMTP.Connect просто вызывается метод предка TaeSocket.Connect
>> Ответитьможет, это от версии rs-bank зависит ( dye 13.03.2008 09:39 )
0(0)у меня 5.0.92.35
>> Ответитьнет недумаю, я вобще тестирую только с помощью RSRT32 ( EpByLaT 13.03.2008 11:42 )
0(0)Not specified
>> ОтветитьА что за зверь RSRT32? ( dye 21.03.2008 20:59 )
0(0)Not specified
>> Ответитьотладчик макросов ( EpByLaT 25.03.2008 13:38 )
0(0)Not specified
>> Ответить
RSL to HTTP ( Selivan 07.05.2008 16:18 )
0(0)Добрый день!
Извените если не в тему ,но есть проблема реализации пересылки данных (XML), по протоколу HTTP. Возможно ли используя класс TaeHTTP пересылать данные XML.
Знаю что имеется технология AJAX , которая позволяет это делать через COM - обьекты (напр.
Microsoft.XMLHTTP), но было бы неплохо использую вашу aenetobj.d32, но пока не знаю возможно ли и если да то как.
>> Ответитьнет, невозможно ( EpByLaT 16.05.2008 09:09 )
0(0)я пробовал реализовать хотя бы просто получение документа XML, пока не вышло.
как будет результат сообщу.
>> Ответить
аварийное завершение отсылки ( BRV29a 28.05.2010 06:25 )
0(0)После запуска из RSL след-го кода:
var ob=TaeSMTP;
ob.Help();
ob.Host=SMTP_ip;
ob.Port=SMTP_port;
ob.TimeOut=SMTP_TimeOut;
ob.Connect();
ob.CharSet=SMTP_CharSet;
ob.fromaddress=toANSI(SMTP_FromAddress);
ob.toaddress=toANSI("XXX@mail.ru");
ob.FromName=SMTP_FromName;
ob.text=toANSI("Письмо отправлено из RSL. Сообщение отправлено "+string(Date));
if (ob.Connected)
ob.SendMail();
ob.disconnect;
end;
сообщение отправляется, а спустя несколько секунд рс-банк вываливается с такой ошибкой:
Exception Handler
The instruction at 0x015D151C referenced memory at 0x015D151C, the memory
could not be read (code 4, native code 0xC0000005)
Abnormal program termination
терминал закрывается и на сервере идет процесс "пожирания" памяти....
Может надо как-то корретно освобождать память после завершения кода?
>> Ответитьверсия: ( BRV29a 28.05.2010 06:27 )
0(0)Работа в трехзвенке, версия рс-банка 5.50.001.034
>> Ответить