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

Вниз

pomoghite gde tut oshibka   Найти похожие ветки 

 
krimer   (2001-11-10 17:52) [0]

S> hI
S> please pomoghite!!!
S> u mnea tut problema s obrabotkoi sobitii i problema s
S> ServerSocket.ClientRead := MyObject.ClientRead; daiot oshibku please
S> podkoriktiruite chto u menea tut ne tak, blin nikto tolkom ne skazal
S> chto tut ne tak!
S> spasibo zaranee




S> program sturm;
S> {$APPTYPE CONSOLE}

S> uses
S> SysUtils,
S> ScktComp;

S> type
S> TMyObject = class

S> public
S> procedure OnClientConnect(Sender: TObject; Socket: TCustomWinSocket);
S> procedure ClientRead(Sender: TObject; Socket: TCustomWinSocket);
S> end;


S> var
S> ServerSocket : TServerSocket;
S> MyObject: TMyObject;

S> procedure TMyObject.OnClientConnect(Sender: TObject; Socket: TCustomWinSocket);
S> var
S> i: integer;
S> begin
S> WriteLn("Client connect " + Socket.RemoteAddress + ":" + IntToStr(Socket.RemotePort));
S> {Посылаем ВСЕМ клиентам сообщение из Edit1}
S> for i := 0 to ServerSocket.Socket.ActiveConnections-1 do begin
S> ServerSocket.Socket.Connections[i].SendText("+OK Sturm.NET Server v0.1 ready <" + "localhost" + ">");
S> end;
S> end;

S> procedure TMyObject.ClientRead(Sender: TObject; Socket: TCustomWinSocket);
S> begin
S> WriteLn("Client message " +Socket.ReceiveText);
S> end;

S> begin
S> ServerSocket := TServerSocket.Create(nil); // создаем объект - серверное гнездо
S> ServerSocket.Port := 4567; // порт задан "от фонаря" !!
S> ServerSocket.ServerType := stNonBlocking; // для простоты - неблокирующий режим
S> MyObject := TMyObject.Create; // создаем объект - обработчик событий серв.гнезда
S> ServerSocket.OnClientConnect := MyObject.OnClientConnect; // назначаем обработчик на подключение ублюдка
S> ServerSocket.ClientRead := MyObject.ClientRead; // назначаем обработчик на прием месаг ублюдка
S> WriteLn("Sturm.NET Server v0.1");

S> try
S> ServerSocket.Active := True; // старт серв.гнезда
S> ServerSocket.Active := False; // halt
S> while not Application.Terminated do begin
S> Application.ProcessMessages; // process messages in the message queue
S> Sleep(10); // don"t use 100% CPU
S> end;

S> finally
S> ServerSocket.Free; // разрушаем серв.гнездо
S> MyObject.Free; // разрушаем объект-обработчик
S> end;
S> end.


 
kravt ©   (2001-11-10 21:22) [1]

1.Добавить в uses ..,Forms,..

2.Вместо
> ServerSocket.ClientRead := MyObject.ClientRead;
cделать
ServerSocket.OnClientRead := MyObject.ClientRead;

3. И закомментировать
ServerSocket.Active := False

Удачи. Александр.


 
krimer   (2001-11-11 13:48) [2]

spasibo


 
Digitman ©   (2001-11-12 14:00) [3]

>kravt

"1.Добавить в uses ..,Forms,.." - это еще зачем ?



 
Digitman ©   (2001-11-12 14:08) [4]

>krimer
1.Как только ты задействуешь модуль Forms, ты потеряешь многие из преимуществ консольного приложения.

2.
S> while not Application.Terminated do begin
S> Application.ProcessMessages; // process messages in the message queue
S> Sleep(10); // don"t use 100% CPU
S> end;

Это зачем ? TServerSocket создает собственное окно и обрабатывает сообщения самостоятельно


 
krimer   (2001-11-14 14:30) [5]

nu narod daite delinii sovet! atgo uje zadolbalsea!!!
please!!


 
Digitman ©   (2001-11-15 09:06) [6]

>krimer
Тебе уже дали дельный совет ! Что еще-то хочешь ?

...
try
ServerSocket.Active := True; // старт сервера
ReadLn; // ждем нажатия <ENTER>, чтобы завершить работу сервера
ServerSocket.Active := False; // стоп сервера
finally
ServerSocket.Free;
MyObject.Free;
end;
...



 
krimer   (2001-11-16 20:49) [7]

tak blin ne pashet ono k serveru konektitsea a vot v okne servake nifiga ne pishetsea a mnogie mne govoreat chto readln ne obrabativaet sobitie popitaitesi eto otkompiliropvati tak ono ne budet ispolneat postavleanie pered nim zadachi



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

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

Наверх




Память: 0.48 MB
Время: 0.01 c
3-18721
vano1
2002-01-10 12:27
2002.02.07
Как добраться до базы данных MS Acces?


1-18875
Gabi100
2002-01-23 10:48
2002.02.07
Прилипание формы


3-18728
Akhmadey
2002-01-10 07:58
2002.02.07
Где скачать бы, а?


1-18786
MaTaDoR
2002-01-21 13:32
2002.02.07
Активизируя родительское окно, оно не должно перекрывать дочернее


3-18775
michael_B
2002-01-11 12:43
2002.02.07
Нужно загрузить в TComboBox.Items все имеющиеся таблицы