[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: The necessity of gdomap and gdnc?

From: Richard Frith-Macdonald
Subject: Re: The necessity of gdomap and gdnc?
Date: Tue, 25 Oct 2005 16:22:41 +0100

On 2005-10-25 14:31:56 +0100 Adrian Robert <address@hidden> wrote:

On Oct 25, 2005, at 4:37 AM, Leigh Smith wrote:


So my question is the degree to which gdomap and gdnc are indeed necessary for an application not requiring explicit use of inter- process comms and if NSMessagePortNameServer would address this (since I see NSMessagePorts are explictly excluded on the MinGW port).

Is it, or would it be, possible to build GNUstep's gui with a ./ configure option or use an NSUserDefault to limit notifications and objects to the running GNUstep application and not attempt to connect to the gdomap & gdnc servers and if so, any hints on implementing this?


What do other Windows apps typically use for interprocess communication? I know there has been some discussion on this before, but if the current approach is a big stumbling block for deployment, does anyone think this could be pressed into service for some of the DO stuff? I know there is COM et al. which might be too high-level for the socket-com types of things GNUstep does, but maybe there is some protocol that COM uses underneath? For example, I seem to recall gnuclient uses something called 'mailboxes' (which despite the name have little to do with email) to communicate with a running Emacs instance on the WinNT family. This doesn't require any sort of user interaction, though the situation differs from what you are after since Emacs just starts the listener every time it starts up.

Everything I've read suggests that windows messages are the best mechanism for host-local IPC (NSMessagePort). For instance the WM_COPYDATA should be usable to transfer data from one app to another. Each GNUstep app starts up an invisible window to handle events for NSRunLoop .... this could be given a globally unique name, and used to send/receive messages. The NSMessagePortNameServer code could use the windows registry to map port names to the globally unique names used to identify the windows used in each app to send messages.
See for an example.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]