Форум: "KOL";
Текущий архив: 2005.03.13;
Скачать: [xml.tar.bz2];
Вниз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 вся ветка
Форум: "KOL";
Текущий архив: 2005.03.13;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.039 c