IPC zwischen Console Application und Library

Für Fragen zur Programmiersprache auf welcher Lazarus aufbaut
Antworten
piula
Beiträge: 12
Registriert: Sa 2. Jan 2016, 21:25

IPC zwischen Console Application und Library

Beitrag von piula »

Hallo,

ich habe eine console application und eine library. Ich benötige eine Kommunikation von der library zum Hauptprogramm und wollte das über TSimpleIPC abwickeln:

Console application:

Code: Alles auswählen

 
IPC := TSimpleIPCServer.Create (NIL);
IPC.ServerID := 'test';
IPC.Global := TRUE;
IPC.OnMessage := @ReceiveIPCMessage;
IPC.StartServer;
 


Library:

Code: Alles auswählen

 
IPC := TSimpleIPCClient.Create (NIL);
IPC.ServerID := 'test';
IPC.Connect;
IPC.SendStringMessage('abc');
 


Problem:

Die Ausführung der Library blockiert bei "SendStringMessage".

Ich suche also einen Weg, von einer Library aus das Hauptprogramm zu benachrichtigen, und zwar unter folgenden Randbedingungen:

- Der Code innerhalb der Library läuft in einem eigenen Thread.
- Die Lösung muss threadsafe sein.
- Die Lösung muss plattformunabhängig sein.

Jede Hilfe ist willkommen, danke!

Antworten