> > I note that WinVNC (http://www.uk.research.att.com/vnc/) has a tool > > which allows you to install it as a service in Windows 2000 and Windows > > NT, the same thing would seem to make clear sense for the Windows > > Freenet release. The source code for doing this may be available on the > > WinVNC website - can we do this? > > > Any executable can be run as a service on NT (and presumably 2000) via a > wrapper included in the NT resource kit (SRVANY.EXE). IIRC Tomcat application > server can be run this way so Freenet should work also.
Not strictly true... SRVANY has its limitations and there are certain things that the executable that it runs cannot do otherwise it won't work. Here are some problems with making Freenet run as a service on Windows: o The freenet systray application assumes the node runs like any normal executable file. In fact the freenet systray application stops and restarts the node at will o The freenet systray application actually spawns the node in GUI mode but hides the GUI window the node creates. It does this so that it can send a WM_SYSCOMMAND[SC_CLOSE] to the node window to shut the node down (can you think of a better way to shut down the node?) o The freenet systray application (and the node as a result of previous point) both need to create windows, sometimes hidden ones, and interact with the desktop and the user. These are generally bad things for services to do. (What do I know, hell, I only write services daily). Who knows what might happen (not me, cos I haven't tried running freenet as a service yet) It could be that SRVANY works fine for freenet.exe , I don't have it at home so I can't try it out. What I would therefore prefer to do is write a server wrapper for the java node, and modify freenet.exe to communicate with this wrapper rather than the node itself. Obviously this won't work on Windows 9x (well, probably not), so freenet.exe would need fall back to its original behaviour in such a case. That way, we have a non-GUI application (the freenet node, implemented as an .exe (with service entry points) which is itself just a wrapper for the java node) and a GUI 'control panel' (what freenet.exe currently is, effectively) Thoughts? (sounds good to me). BTW - obviously, if SRVANY does work, then go with that for now, but it really is a highly undesirable solution. And writing our own services really ain't that hard. Dave _______________________________________________ Devl mailing list Devl at freenetproject.org http://lists.freenetproject.org/mailman/listinfo/devl
