Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.11.06;
Скачать: 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 вся ветка

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

Наверх




Память: 0.44 MB
Время: 0.041 c
4-1125093097
ronyn
2005-08-27 01:51
2005.11.06
Как шрифт установить?...


2-1129023469
romas
2005-10-11 13:37
2005.11.06
новые технологии в БД


2-1129128179
Fast2
2005-10-12 18:42
2005.11.06
Как запичать в таблицу данные типа Date?


6-1121775131
SlyFox
2005-07-19 16:12
2005.11.06
Простенький SMTP-сервер


4-1125410367
artdeveloper
2005-08-30 17:59
2005.11.06
Открыть системное диалоговое окно списка пользователей





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский