第一个kbmmw for Linux 服务器
从kbmmw 5.01 开始,就正式支持delphi 10.2 和Linux 了。
今天我们就建一个 kbmmw for linux 服务器简单说一下。
本例子基于上次的linux Daemon例子 。
如果大家不熟悉,请先阅读上面的文章。
首先在datamodule 里面放上 kbmmwserver 和 kbmMWTCPIPIndyServerTransport
两个控件。
如图,并设置好对应的值。

然后建立一个标准的服务,可以参照本例子。
生成对应的服务及函数。

在DataModule 里面加入建立 服务的代码。
procedure Tdmf.DataModuleCreate(Sender: TObject); var sd:TkbmMWCustomServiceDefinition; begin sd:=kbmMWServer1.RegisterService(TkbmMWInventoryService,false); sd:=kbmMWServer1.RegisterService(Txalionsrv,false); end;
主程序代码如下:
program Project2;
{$APPTYPE CONSOLE}
{$R *.res}
uses
Posix.Unistd,
Posix.SysTypes,
System.SysUtils,
dmp in 'dmp.pas' {dmf: TDataModule},
srv_yw in 'srv_yw.pas' {xalionsrv: TkbmMWSimpleService};
procedure daemon;
begin
dmf:=Tdmf.Create(nil);
dmf.kbmmwserver1.Active:=True;
writeln('service started');
try
repeat
sleep(10 * 1000);
until False;
finally
dmf.Free;
end;
end;
var
pid: pid_t;
begin
pid := fork;
if pid = 0 then
begin
writeln('starting service');
daemon;
end;
end.
编译并在linux 下运行这个程序。
程序退出后,自动在后台建立一个服务。

好了,我们在客户端访问这个程序。
客户端例子参照这个文章http://www.cnblogs.com/xalion/archive/2012/01/31/2332417.html

看来没有任何问题,用kbmmw 写linux 服务器就这么简单。
你喜欢吗?


浙公网安备 33010602011771号