In this article, we undertook a comprehensive review of .NET and Win32 IPC technologies, and discussed why some of them, popular though they may be for RPC, simply aren't appropriate for IPC. One common sticking point is Terminal Services support―making the distinction between intrasession and intersession IPC mechanisms. Another is security: consideration of threat surface, and exposure to elevation-of-privilege and denial-of-service attacks. Unfortunately, neither of the two .NET Remoting channels included with the Common Language Runtime is serviceable for intrasession IPC scenarios, for a combination of these reasons. Finally, we resurrected a very old (but very simple and reliable) technology called Dynamic Data Exchange (DDE) by creating a managed library for simple, intrasession IPC messaging.
展开▼