Модераторы: Snowy, Poseidon, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Помогите, люди добрые, разобраться с TServerClient, Помогите, люди добрые, разобраться с TSe 
:(
    Опции темы
X-Serge
Дата 6.10.2002, 21:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 6
Регистрация: 6.10.2002

Репутация: нет
Всего: нет



Вопрос такой:
Есть объект
type
TFileServerThread = Class(TServerClientThread)
public
a : integer;
Procedure ClientExecute; override;
End;
.....
Procedure TFileServerThread.ClientExecute;
Begin
ClientSocket.Close;
End;
У него есть переменная a : integer;

Если в обработчике OnGetThread писать так

Procedure TForm1.ServerSocketGetThread(Sender: TObject;
ClientSocket: TServerClientWinSocket;
Var SocketThread: TServerClientThread);
Begin
// Create a new thread for connection
SocketThread := TFileServerThread.Create(False, ClientSocket);
End;

То не получается SocketThread.a:=1;

А если сделать так

Procedure TForm1.ServerSocketGetThread(Sender: TObject;
ClientSocket: TServerClientWinSocket;
Var SocketThread: TServerClientThread);
Var SThread: TFileServerThread;
Begin
// Create a new thread for connection
SThread := TFileServerThread.Create(False, ClientSocket);
SThread.a:=1;
End;

То вылетает ошибка :-(
Помогите чайнику решить этот вопрос!!!
PM MAIL   Вверх
Dayana
Дата 6.10.2002, 21:39 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Если тебе нужно, чтобы а становилось равно 1, когда создается thread, то присвой a := 1 в методе TFileServerThread.Create.
  Вверх
Fantasist
Дата 7.10.2002, 04:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Лентяй
***


Профиль
Группа: Участник Клуба
Сообщений: 1517
Регистрация: 24.3.2002

Репутация: нет
Всего: 41



Ecть несколько возможностей решения данного вопроса:
1. Самое простое:
Код

SThread := TFileServerThread.Create(True, ClientSocket);
SThread.a:=1;
SThread.Resume;

2. Переопределить конструктор и запихнуть в него дополнительный параметр:
Код

constructor TFileServerThread.Create(Susp:boolean, ClientSocket: TServerClientWinSocket; a_a:integer);
begin
a:=a_a;
inherited Create(Susp,ClientSocket);
end;

3. Вряд ли, это то, что ты хочешь, но можно и так:
Код

constructor TFileServerThread.Create(Susp:boolean, ClientSocket: TServerClientWinSocket);
begin
FreeOnTerminate:=false;
inherited Create(Susp,ClientSocket);
end;

.....
Procedure TForm1.ServerSocketGetThread(Sender: TObject;
ClientSocket: TServerClientWinSocket;
Var SocketThread: TServerClientThread);
Var SThread: TFileServerThread;
Begin
// Create a new thread for connection
 SThread := TFileServerThread.Create(False, ClientSocket);
 SThread.a:=1;
End;


В этом случае надо где-то самому сделать SThread.Free;


--------------------
Волны гасят ветер...
PM MAIL   Вверх
Alex
Дата 26.2.2005, 21:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 4147
Регистрация: 25.3.2002
Где: Москва

Репутация: 4
Всего: 162



Перенесено из раздела Дельфи


--------------------
Написать можно все - главное четко представлять, что ты хочешь получить в конце. 
PM Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Сети"
Snowy
Poseidon
MetalFan

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делится вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи

Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Snowy, Poseidon, MetalFan.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Сети | Следующая тема »


 




[ Время генерации скрипта: 0.0408 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.