Вниз
Скачать: CL | DM;

Сохранение указателя на TIdContext в Indy10   Найти похожие ветки 

← →
vers ©   (2005-07-23 02:37) [0]

Вот код:

procedure ConnectProc(AContext:TIdContext);
var
 context:TIdContext;
 context2:TIdContext;
begin
Label1.Caption:=IntToStr(LongInt(@AContext));
socket:=TIdContext(@AContext);
Label2.Caption:=IntToStr(LongInt(@socket));
socket:=AContext;
Label3.Caption:=IntToStr(LongInt(@socket));
socket2:=socket;
Label4.Caption:=IntToStr(LongInt(@socket2));
end;

В результате: содержимое второго и третьего Label"ов одинаковые, остальные - разные. Получается, при каждом присваивании переменной типа TIdContext, присваивается не она, а какая-то чушь? Или я чего-то не понимаю (что вероятнее всего)?
Этот вопрос возник при перенесении кода из Indy9 в Indy10. Программа сохраняет указатели на все пользовательские соединения к IdTCPServer"у. Раньше это было TIdTCPConnection, теперь TIdContext. Но в случае с TIdTCPConnection указатели не менялись при присваивании.


← →
vers ©   (2005-07-23 02:41) [1]

Прошу прощения, не TIdTCPConnection, а TIdPeerThread в Indy9.


← →
vers ©   (2005-07-23 13:17) [2]

Вопрос снимается: сам глупый :)
AContext.Connection.Socket.Write("1");
и

context:=AContext;
context.Connection.Socket.Write("1");

работают идентично.
PS: В исходнике наверху я немного ошибся с названиями переменных.



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.045 c
1-1129545468
DeStranger
2005-10-17 14:37
2005.11.06
Модальное окно теряет фокус


6-1122368604
shade_
2005-07-26 13:03
2005.11.06
"новое удалённое подключение к сети"(RAS) программно...?


11-1110074904
серый мЫш
2005-03-06 05:08
2005.11.06
TKOLMainMenu


6-1117384270
Flame
2005-05-29 20:31
2005.11.06
проблемка с twebbrowser


2-1129549695
Fast2
2005-10-17 15:48
2005.11.06
Объясните популярно, почему при выполнении,...




   Наверх