Unit 'simpleipc' Package
[Overview][Resource strings][Constants][Types][Classes][Variables][Index] [#fcl]


[Properties (by Name)] [Methods (by Name)] [Events (by Name)]

Simple IPC server component.


Source position: simpleipc.pp line 135

type TSimpleIPCServer = class(TSimpleIPC)


  constructor Create(); override;


Create a new instance of TSimpleIPCServer.

  destructor Destroy; override;


Remove the TSimpleIPCServer instance from memory.

  procedure StartServer();


Start the server.

  procedure StopServer;


Stop the server.

  function PeekMessage();


Check if a client message is available.

  function ReadMessage;


Read message from the queue.

  property StringMessage: string; [r]


Last message as a string.

  procedure GetMessageData();


Read the data of the last message in a stream.

  property Message: TIPCServerMsg; [r]


Last read message.

  property MsgType: TMessageType; [r]


Last message type.

  property MsgData: TStream; [r]


Last message data.

  property InstanceID: string; [r]


Instance ID.

  property ThreadExecuting: Boolean; [r]


Is the message thread currently executing ?

  property ThreadError: string; [r]


Last thread error.


  property Global: Boolean; [rw]


Is the server reachable to all users or not.

  property OnMessage: TNotifyEvent; [rw]


Event triggered when a message arrives.

  property OnMessageQueued: TNotifyEvent; [rw]


Event called when a new message has arrived.

  property OnMessageError: TMessageQueueEvent; [rw]


Event called when a new message has arrived, and the queue is full.

  property OnThreadError: TNotifyEvent; [rw]


Triggered when a thread reports an error.

  property MaxQueue: Integer; [rw]


Maximum number of messages in the queue, 0 for unlimited.

  property MaxAction: TIPCMessageOverflowAction; [rw]


Action to take when the number of messages will exceed MaxQueue.

  property Threaded: Boolean; [rw]


Is the server running threaded or not ?

  property ThreadTimeout: Integer; [rw]


Timeout waiting for message.

  property SynchronizeEvents: Boolean; [rw]


Should events be run in the main thread ?





Simple IPC server component.




Ancestor for client/server simple IPC classes.








TSimpleIPCServer is the server side of the simple IPC communication protocol. The server program should create a TSimpleIPCServer instance, set its ServerID property to a unique name for the system, and then set the Active property to True (or call StartServer).

After the server was started, it can check for availability of messages with the PeekMessage call, and read the message with ReadMessage.

See also



Simple IPC client component.



Ancestor for client/server simple IPC classes.



Internal message communication component.

Documentation generated on: Jul 24 2023