![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Консоль и TServerSocket [D6]
John © (2002-12-27 19:51:00)Вот фишка какая, где 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.
John (2002-12-28 05:18:00) [1]Тхэнкс!!!
wbc (2002-12-27 21:27:00) [2]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;
wbc (2002-12-27 21:23:00) [3]Точно,
вот например:
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;
Anatoly Podgoretsky (2002-12-27 19:59:00) [4]ClientConnect должен быть методом формы, создай класс и в нем этот метод.