Componentes.Terceros.RemObj.../internal/5.0.23.613/1/RemObjects SDK for Delphi/Samples/Super TCP Channel Chat/SuperTCPChannelChat_ServerMain.pas
david 2824855ea7 - Modificación del paquete RemObjects_Core_D10 para que sea un paquete de runtime/designtime (antes era designtime sólo)
- Recompilación en Delphi10 de todos los paquetes de RO para generar las DCU's en Lib\D10
- Recompilación en Delphi10 de todos los paquetes de DA para generar las DCU's en Lib\D10

git-svn-id: https://192.168.0.254/svn/Componentes.Terceros.RemObjects@9 b6239004-a887-0f4b-9937-50029ccdca16
2007-09-10 14:06:19 +00:00

51 lines
1.3 KiB
ObjectPascal

unit SuperTCPChannelChat_ServerMain;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls,
uROClient, uROPoweredByRemObjectsButton, uROClientIntf, uROServer,
uROBinMessage, uROSuperTcpServer, uROSessions, uROEventRepository;
type
TSuperTCPChannelChat_ServerMainForm = class(TForm)
ROPoweredButton: TROPoweredByRemObjectsButton;
ROMessage: TROBinMessage;
ROServer: TROSuperTcpServer;
ROSessionManager: TROInMemorySessionManager;
ROEventRepository: TROInMemoryEventRepository;
procedure FormCreate(Sender: TObject);
procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);
private
{ Private declarations }
public
{ Public declarations }
end;
var
SuperTCPChannelChat_ServerMainForm: TSuperTCPChannelChat_ServerMainForm;
implementation
uses
SuperTCPChannelChatLibrary_Intf;
{$R *.dfm}
procedure TSuperTCPChannelChat_ServerMainForm.FormCreate(Sender: TObject);
begin
ROServer.Active := true;
end;
procedure TSuperTCPChannelChat_ServerMainForm.FormCloseQuery(
Sender: TObject; var CanClose: Boolean);
var
ev: IChatEvents_Writer;
Session: TROSession;
begin
ev := (ROEventRepository as IChatEvents_Writer);
ev.ShutdownServer(EmptyGUID);
Sleep(2000); // allow clients to gracefully logout.
end;
end.