Форум: "Сети";
Текущий архив: 2003.02.20;
Скачать: [xml.tar.bz2];
ВнизКонсоль и TServerSocket Найти похожие ветки
← →
John (2002-12-27 19:51) [0]Вот фишка какая, где Server1.OnClientConnect := ClientConnect;
не хочет она присваиваться.. пишет что:incompatible types: method pointer and regular procedure.. никто не нает?
program Server;
{$APPTYPE CONSOLE}
uses
SysUtils,
ScktComp;
procedure ClientConnect(Sender: TObject;
Socket: TCustomWinSocket);
begin
writeln( "client connected!" );
end;
var
Server1 : TServerSocket;
begin
writeln( "-=Welcome To zUnix=-" );
sleep( 500 );
writeln( "please wait.." );
sleep( 3000 );
Server1 := TServerSocket.Create( nil );
Server1.OnClientConnect := ClientConnect;
Server1.Port := 21;
Server1.Active := True;
writeln( "server started, waiting for clients connecting.." );
while true do
readln;
end.
← →
Anatoly Podgoretsky (2002-12-27 19:59) [1]ClientConnect должен быть методом формы, создай класс и в нем этот метод.
← →
wbc (2002-12-27 21:23) [2]Точно,
вот например:
TEvents=class
procedure Receive(Sender: TObject; Socket: TCustomWinSocket);
procedure Connect(Sender: TObject; Socket: TCustomWinSocket);
procedure disconnect(Sender: TObject; Socket: TCustomWinSocket);
procedure error(Sender: TObject; Socket: TCustomWinSocket;
ErrorEvent: TErrorEvent; var ErrorCode: Integer);
end;
← →
wbc (2002-12-27 21:27) [3]implementation
. . .
procedure TEvents.Connect(Sender: TObject; Socket: TCustomWinSocket);
begin
что-то делаем;
end;
. .
А дальше
Events=TEvents.create;
Server1 := TServerSocket.Create( nil );
Server1.OnClientConnect := Events.ClientConnect;
. . .
Server1.free;
Events.free;
end;
← →
John (2002-12-28 05:18) [4]Тхэнкс!!!
Страницы: 1 вся ветка
Форум: "Сети";
Текущий архив: 2003.02.20;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.006 c