Вниз
Скачать: CL | DM;

Как не допустить закрытие консольного приложения ?   Найти похожие ветки 

← →
delpher_gray ©   (2002-09-18 19:57) [0]

Привет Делферы !
Списибо что помогли помогли написать консольный сервер (особенно это относится к REA).
Так вот, есть консольное приложение (сервер), и при его запуске он сразу закрывается... Если написать к примеру while true do ServerSocket1.Open;, тогда события не будут работать :-( Подскажите как сделать чтоб сервер работал, и чтоб естественно события работали.
Вот код сервера:
program PServer;

uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, SvcMgr, Dialogs,
ScktComp;

type
TMyClass = class
public
procedure ClientConnectEvent(Sender: TObject; Socket: TCustomWinSocket);
end;

var
ServerSocket1: TServerSocket;
TCPHandler: TMyClass;

procedure TMyClass.ClientConnectEvent(Sender: TObject; Socket: TCustomWinSocket);
begin
Socket.SendText("Присоеденился: "+Socket.RemoteHost);
end;

begin
TCPHandler := TMyClass.Create;
ServerSocket1 := TServerSocket.Create(nil);
ServerSocket1.Port := 123;
ServerSocket1.OnClientConnect := TCPHandler.ClientConnectEvent;
ServerSocket1.Open; // Вот с этим надо что-то делать :-)
ServerSocket1.Free;
TCPHandler.Free;
end.

Подскажите плиз !


← →
ATR   (2002-09-18 20:32) [1]


........
var Msg:TMSG;
Cancel:boolean;
.........
begin
.........
ServerSocket1.Open;
while not Cancel do
begin
while PeekMessage(Msg, 0, 0, 0, PM_REMOVE) do
begin
TranslateMessage(Msg);
DispatchMessage(Msg);
end;
Sleep(5);
end;
ServerSocket1.Close;
ServerSocket1.Free;
.......

И не забывай делать ServerSocket1.Close перед Free.



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.012 c
1-98075
Fog
2002-09-18 16:15
2002.09.30
Супер запутанные лупы


4-98408
ilg
2002-08-15 09:09
2002.09.30
Смена шрифта у Hint


1-98066
Skywalker
2002-09-19 12:02
2002.09.30
Почему не удаляется?


14-98277
NetBreaker666
2002-09-02 23:16
2002.09.30
---|Ветка была без названия|---


1-98189
Новенький в Делфи
2002-09-18 00:07
2002.09.30
Обработчик событий в другом модуле. Как сделать?




   Наверх