Difference between revisions of "SimpleIPC"

From Lazarus wiki
Jump to navigationJump to search
Line 1: Line 1:
Simple IPC is a Free Pascal unit (and Lazarus components) that allows interprocess communication (IPC) between Free Pascal programs.
+
'''Simple IPC''' is a Free Pascal unit (and Lazarus components) that allows interprocess communication (IPC) between Free Pascal programs.
  
 
It allows two executables to communicate.
 
It allows two executables to communicate.
Line 11: Line 11:
 
==Use Cases==
 
==Use Cases==
  
The Lazarus help system itself, uses SimpleIPC.
+
The [[Help protocol|Lazarus help system]] itself, uses SimpleIPC.
  
 
Some [[fpGUI]] tools and demos use IPC, for example, to detect if the program is already running (single instance)
 
Some [[fpGUI]] tools and demos use IPC, for example, to detect if the program is already running (single instance)
Line 20: Line 20:
  
 
==See also==
 
==See also==
[https://www.freepascal.org/docs-html/current/fcl/simpleipc/index.html Official FCL documentation for SimpleIPC unit]
+
* [https://www.freepascal.org/docs-html/current/fcl/simpleipc/index.html Official FCL documentation for SimpleIPC unit]
  
  

Revision as of 15:20, 28 July 2020

Simple IPC is a Free Pascal unit (and Lazarus components) that allows interprocess communication (IPC) between Free Pascal programs.

It allows two executables to communicate.

Advantages of SimpleIPC

You can create communication systems without requiring low level sockets programming of your own. SimpleIPC does the grunt work of IPC for you and makes a nice high level wrapper around lower level IPC mechanisms, so you don't have to program them yourself.

SimpleIPC can be used to communicate between programs to make simple communication systems, plugin systems and much more,

Use Cases

The Lazarus help system itself, uses SimpleIPC.

Some fpGUI tools and demos use IPC, for example, to detect if the program is already running (single instance)

Send Messages to Other Programming Languages

For IPC between Free Pascal programs and other programs written in any language (C++, Delphi, GoLang, etc.) see SimpleIPC Library which allows you to use SimpleIPC not just in FPC and Lazarus, but in multiple programming languages.

See also