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

Вниз

KOLScktComp   Найти похожие ветки 

 
DeimosX7 ©   (2004-07-28 11:36) [0]

Как правильно создать событие ServerSocket.OnClientRead ?
я пробовал так :

procedure ServerSocketClientRead (Sender: PObj; Socket: PCustomWinSocket);
begin
 //код
end;

и вызов :

ServerSocket.OnClientRead := TOnEvent(MakeMethod(nil,@ServerSocketClientRead));


Компиляторговорит :
[Error] main.dpr(90): Incompatible types: Parameter lists differ


 
fellix   (2004-07-28 12:16) [1]

... OnClientRead := TSocketNotifyEvent(MakeMethod(...


 
DeimosX7 ©   (2004-07-29 17:05) [2]

хм.. тут вот  какая проблема..
я пытаюсь написать прогу для удаленного ведения log-ов
на базе сокетов
но ни чего не выходит..
упростил все до минимума в целях проверки,
та-же история
может подскажет кто?

условия работы такие:
2 компа

сервер 192.168.1.2
клиент 192.168.1.1
-------------------------------------
вот код:

сервер:
пишет все полученное в мемо


program TestServer;

uses
 kol,
 Windows,
 Messages,
 KOLScktComp;

var
form,memo:Pcontrol;
ServerSocket:TKOLServerSocket;
//---------------------------------

procedure ServerSocketClientRead (Sender: PObj; Socket: PCustomWinSocket);
begin
 memo.add(socket.receiveText);
end;

//---------------------------------
begin
Applet:=NewApplet("TestServer");
form:=NewForm(Applet,"TestServer");
Form.Style := WS_SYSMENU or WS_VISIBLE ;
form.CenterOnParent ;
Form.Font.FontName := "MS Sans Serif";
Form.Font.FontHeight := 9;
memo:=NewEditBox( Form,[eoMultiline,eoNoHScroll,eoNoVScroll,eoReadonly]).SetPosition(2,38).SetSize(290,160);

ServerSocket := NewServerSocket;
serverSocket.Port:=2066;
Form.Add2AutoFree(ServerSocket );
serverSocket.Active:=true;

serverSocket.OnClientRead:= TSocketNotifyEvent (MakeMethod(nil,@ServerSocketClientRead));

applet.StayOnTop:=true;
form.SetSize(300,300);
run(Applet);

end.

//--------------------------------

клиент:
раз в 4 секунды посылает сообщение(в тестовых целях)
видимой части не имеет..

program STest;

uses

 kol,
 Windows,
 Messages,
 KOLScktComp;

var
clientSocket:TKOLClientSocket;

begin

ClientSocket := NewClientSocket;
clientSocket.Port:=2066;

while true do
begin
   clientSocket.Address:="192.168.1.2";
   clientSocket.Active:=true;
   clientSocket.Socket.SendText("message");
   clientSocket.Active:=false;
   sleep(4000);
end;

end.


 
Gandalf ©   (2004-08-17 22:41) [3]

И что происходит?



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

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

Наверх




Память: 0.47 MB
Время: 0.023 c
3-1108117263
lightix
2005-02-11 13:21
2005.03.13
SQL Server + ADO


9-1103121746
D-Man
2004-12-15 17:42
2005.03.13
Генерация 2d карт


8-1101130602
Axer
2004-11-22 16:36
2005.03.13
Ещё вопросик по BASS.DLL


1-1109342641
Goga
2005-02-25 17:44
2005.03.13
Свойство объекта


4-1106922134
JaDS
2005-01-28 17:22
2005.03.13
деректива message