2008-11-25 3 views
6

Ich muss zwei verschiedene Client-Anwendung sprechen ohne irgendeine Art von Broker oder Server. Was ist die beste Methode für IPC zwischen zwei Prozessen, Java und .NET?IPC zwischen .NET und Java-Client-Anwendungen

Es muss in der Lage sein, in Multi-User-Terminalserver zu arbeiten, also bitte kein Socket. Ich wünsche mir, dass es leicht und einfach ist, etwas plug and run, also bitte keine RMI/WS.

Ich denke jetzt über JNI auf Mutex und Named Pipes zugreifen, gehe ich in eine richtige Richtung?

Irgendwelche Ideen willkommen!

Dank Dennis

Antwort

4

Sie können WinAPI durch JNI zugreifen (Java) und PInvoke (C#). Verwenden folgende WinAPI Funktionen: Create SetEvent WaitForSingleObject CreateMutex ReleaseMutex Create (Aktien Speicher) MapViewOfFile UnmapViewOfFile

0

Ich würde protobuf verwenden.

Protokollpuffer sind eine Möglichkeit, strukturierte Daten in einem effizienten, jedoch erweiterbaren Format zu codieren. Google verwendet Protokollpuffer für fast alle internen RPC-Protokolle und Dateiformate.

+0

ProtoBuf unterstützt .NET nicht eigenständig. Sie benötigen außerdem https://code.google.com/p/protobuf-net/ – Kenn

6

Ich bin Autor von jni4net, Open Source-Intra-Prozess-Brücke zwischen JVM und CLR. Es ist auf JNI und PInvoke aufgebaut. Kein C/C++ Code benötigt. Ich hoffe es hilft dir.