使用IPC收发消息可以在Windows和Linux下通用。其它系统没测试。
1、在system选项卡中选择TSimpleIPCServer和TSimpleIPCClient加到窗口中
SimpleIPCClient1: TSimpleIPCClient;
SimpleIPCServer1: TSimpleIPCServer;
2、设置参数
SimpleIPCServer1中设置:
Global、Threaded、Active为True,Threaded在win下不设置也可以,但在Linux下不设置成True无法触发onMessageQueued事件
ServerID 为1234 这个要与SimpleIPCClient1中的一样
SimpleIPCClient1中设置为
ServerID 为1234
Active为True
3、发送消息
SimpleIPCClient1.SendStringMessage(1,'有新消息');
4、接收消息
双击SimpleIPCServer1的onMessageQueued加事件
procedure TForm1.SimpleIPCServer1MessageQueued(Sender: TObject);
var
Temp:String;
mytype:Integer;
begin
//有消息来,要先读取
SimpleIPCServer1.ReadMessage;
Temp:=SimpleIPCServer1.StringMessage;
mytype:=SimpleIPCServer1.MsgType;
if mytype=1 then
begin
//消息处理
Exit;
end;
end;