summaryrefslogtreecommitdiff
path: root/fpcsrc/packages/fcl-base/examples/ipcserver.pp
blob: 924cb88c9c5e220ec028f08d83d85768d62ba84b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
{$mode objfpc}
{$h+}
program ipccerver;

{$APPTYPE CONSOLE}

uses
  SysUtils,
  simpleipc;

Var
  Srv : TSimpleIPCServer;
  S : String;

begin
  Srv:=TSimpleIPCServer.Create(Nil);
  Try
    Srv.ServerID:='ipcserver';
    Srv.Global:=True;
    Srv.StartServer;
    Writeln('Server started. Listening for messages');
    Repeat
      If Srv.PeekMessage(1,True) then
        begin
        S:=Srv.StringMessage;
        Writeln('Received message : ',S);
        end
      else
        Sleep(10);
    Until CompareText(S,'stop')=0;
  Finally
    Srv.Free;
  end;
end.