Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.02.17;
Скачать: CL | DM;

Вниз

Работа с TIdConnectionIntercept   Найти похожие ветки 

 
samael6 ©   (2007-05-31 02:51) [0]

Здравствуйте!
Такая задача: у меня есть интерсептор TIdConnectionIntercept прикрученный к TidSMTP, тем самым с просматриваю его траффик.
Как я могу изменять что-либо в этом потоке? Правильно ли будет редактировать передаваемый в обработчики (вида: IdConnectionIntercept1Send, IdConnectionIntercept1Receive) стрим (параметр AStream)?
Т.е. сейчас это так:


procedure TForm1.IdConnectionIntercept1Receive(
 ASender: TIdConnectionIntercept; AStream: TStream);
var
   ss: String;
begin
   SetLength(ss, AStream.Size);
   AStream.Read(ss[1], AStream.Size);
   if ss="SOMEDATA" then begin
       ss:="NEWDATA";
       AStream.Seek(0,0);
       AStream.Write(ss[1], length(ss));
       AStream.Size:=length(ss);
   end;
end;


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

Надеюсь вопрос понятен, хоть и каламбур :)
Спасибо за внимание


 
Samael6 ©   (2007-05-31 02:58) [1]

По второму вопросу, пробавал даже так (все в том же обработчике):

TidSMTP(ASender.Connection).Socket.Send(ss, length(ss));

...не катит :)


 
Сергей М. ©   (2007-05-31 10:09) [2]

Send(PChar(ss)^, length(ss));

!!!!!


> не катит


Учить Паскаль до полного просветления !


 
Samael6 ©   (2007-05-31 14:43) [3]

Спасиба Вам, что-то я не сообразил.
Вопрос можно считать закрытым если по первому вопросу комментариев нет :)



Страницы: 1 вся ветка

Текущий архив: 2008.02.17;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.021 c
2-1201165220
Guriev
2008-01-24 12:00
2008.02.17
Как сделать. чтобы ComboBox-ы заполнились и "зафиксировались"?


2-1201238792
zsv
2008-01-25 08:26
2008.02.17
Количество слов в htm-документе


15-1200407003
OSokin
2008-01-15 17:23
2008.02.17
Доки vs форумы


3-1191244296
Draught
2007-10-01 17:11
2008.02.17
Объеденить несколько строк из таблицы в отдну строку.


2-1201095078
ply
2008-01-23 16:31
2008.02.17
работа с закладками