Главная страница
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.027 c
15-1200227591
Lip
2008-01-13 15:33
2008.02.17
Как проверить введенное число в С


2-1201277062
AntonUSAnoV
2008-01-25 19:04
2008.02.17
вопрос


15-1200547314
гость
2008-01-17 08:21
2008.02.17
на каком языке это написано ?


6-1180565481
samael6
2007-05-31 02:51
2008.02.17
Работа с TIdConnectionIntercept


15-1200315233
asdf
2008-01-14 15:53
2008.02.17
разбор строки