TSimpleIPCServer class
Simple IPC server component.
Declaration
TSimpleIPCServer = class(TSimpleIPC)Inheritance
- TSimpleIPCServer
- TSimpleIPC
- TComponent
- TPersistent
- TObject
Description
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
Properties
Queue | protected | |
Thread | protected | |
StringMessage | public | Last message as a string. |
Message | public | Last read message. |
MsgType | public | Last message type. |
MsgData | public | Last message data. |
InstanceID | public | Instance ID. |
ThreadExecuting | public | Is the message thread currently executing ? |
ThreadError | public | Last thread error. |
Global | published | Is the server reachable to all users or not. |
MaxQueue | published | Maximum number of messages in the queue, 0 for unlimited. |
MaxAction | published | Action to take when the number of messages will exceed MaxQueue. |
Threaded | published | Is the server running threaded or not ? |
ThreadTimeout | published | Timeout waiting for message. |
SynchronizeEvents | published | Should events be run in the main thread ? |
Methods
CommClass | protected | |
PushMessage | protected | |
PopMessage | protected | |
StartComm | protected | |
StopComm | protected | |
StartThread | protected | |
StopThread | protected | |
Activate | protected | |
Deactivate | protected | |
ProcessMessage | protected | |
Create | public | Create a new instance of TSimpleIPCServer. |
Destroy | public | Remove the TSimpleIPCServer instance from memory. |
StartServer | public | Start the server. |
StopServer | public | Stop the server. |
PeekMessage | public | Check if a client message is available. |
ReadMessage | public | Read message from the queue. |
GetMessageData | public | Read the data of the last message in a stream. |
Events
OnMessage | published | Event triggered when a message arrives. |
OnMessageQueued | published | Event called when a new message has arrived. |
OnMessageError | published | Event called when a new message has arrived, and the queue is full. |
OnThreadError | published | Triggered when a thread reports an error. |
Fields
FIPCComm | protected |
Inherited
From TSimpleIPC (10)
Active Busy CheckActive CheckInactive CheckServerID DoError Loaded PrepareServerID ServerID SystemGlobal
From TComponent (73)
_AddRef _Release BeforeDestruction CanObserve ChangeName ComObject ComponentCount ComponentIndex Components ComponentState ComponentStyle DefineProperties DesignInfo DestroyComponents Destroying ExecuteAction FindComponent FreeNotification FreeOnRelease GetChildOwner GetChildParent GetChildren GetDeltaStreams GetEnumerator GetIDsOfNames GetNamePath GetObservers GetOwner GetParentComponent GetTypeInfo GetTypeInfoCount HasParent iicrGetComponent InsertComponent Invoke IsImplementorOf Loading Name Notification ObserverAdded Observers OnGetDeltaStreams Owner PaletteCreated QueryInterface ReadDeltaState ReadDeltaStream ReadState ReferenceInterface RemoveComponent RemoveFreeNotification RemoveFreeNotifications SafeCallException SetAncestor SetChildOrder SetDesigning SetDesignInstance SetInline SetName SetParentComponent SetSubComponent Tag ToString TToStringNameMode UpdateAction Updated UpdateRegistry Updating ValidateContainer ValidateInsert ValidateRename VCLComObject WriteState
From TPersistent (5)
Assign AssignTo FPOAttachObserver FPODetachObserver FPONotifyObservers
From TObject (37)
AfterConstruction CheckDisposed ClassInfo ClassName ClassNameIs ClassParent ClassType CleanupInstance DefaultHandler DefaultHandlerStr Dispatch DispatchStr Disposed DisposeOf Equals FieldAddress Free FreeInstance GetDisposed GetHashCode GetInterface GetInterfaceByStr GetInterfaceEntry GetInterfaceEntryByStr GetInterfaceTable GetInterfaceWeak GetLastCastErrorInfo InheritsFrom InitInstance InstanceSize MethodAddress MethodName newinstance QualifiedClassName StringMessageTable SystemHasExtendedRTTI UnitName
An experiment, built from development snapshots. Not the official Free Pascal or Lazarus documentation.
