On Wednesday 20 June 2007 06:28, John Drescher wrote:
> Kern,
> > Well, I have a nice little project, if you can find a bit of time.  It is 
to
> > separate the Win32 tray monitor code from the Bacula FD into a separate
> > executable.  This is necessary to support Vista since Vista does not 
permit
> > services to interact with the desktop.
> >
> 
> After looking at the code it seems very easy to remove the Tray
> monitor from the bacula-fd. 

Yes, I don't think it will be hard to remove it.

> Do you want the Tray icon  to stay in if 
> the user runs bacula-fd directly instead of starting it as a service?

For the moment, I would like to leave it in.  However, once the new 
tray-monitor is complete, I would like to completely remove it.

> I ask this because after removing the icon there will be no user
> accessible  window when bacula-fd is not run as a service. 

Yes, it will not run as a service, but it needs to be installed as a program 
that is automatically run.  It will simply sit in the tray until someone 
opens it, and it can even run under the user's id rather than a system id.

> However I 
> guess I could make the status window as the main window in this mode
> and do not minimize to the tray.

Well a tray window is a bit special.

Here are a few more thoughts:

The apcupsd project, for which I was previously the project manager has the 
same (almost the same) code for running the tray monitor as Bacula because I 
ported the Bacula Win32 "front-end" code to apcupsd.  Since then, the project 
(Adam, the new project manager) has added some bubble windows to the tray 
monitor, and he has already separated it into a stand-alone program.

As a consequence, you can get a lot of ideas from what he did.  The code is on 
Source Forge, and can be pulled via CVS by checking out Branch-3.14, or you 
can simply download the tar file.

The code that should interest you is in <apcupsd-source>/src/win32 
Because it is much smaller than Bacula all the win32 specific code is in that 
directory, and the new file is called apctray.cpp -- if I remember right.

Now, what is really different about the new code and also will be necessary 
for Bacula is that instead of being linked into Bacula, it will be a 
stand-alone program, so you must:

1. Configure it
2. It must talk to Bacula via the network
3. It must be installed on the system slightly differently -- i.e. different 
registry keys must be setup so that it is started at boot time, but not as a 
service.
4. It should handle multiple instances of the program (i.e. monitor multiple 
computers).

Now, with apcupsd, Adam configures it quite simply passing everything via the 
command line (at least that is what it appears from a quick look at the 
code).  We could do the same, but I think it would be *much* better to put a 
small "config" file parser similar to the one in bconsole or bat into the 
code and have it read the conf file.  If we don't do that, it gets very 
difficult to specify all the command line options for encrypted 
communications ...

I am seriously thinking about moving off the GPL license because I have come 
to realize that compared to certain other Open Source licenses the GPL is 
*extremely* restrictive -- in my personal view, it is far less free than many 
of the other licenses -- a simple example is that I cannot link OpenSSL with 
Bacula and then distribute the binaries.  To avoid this problem, I would like 
to re-write all the existing Win32 daemon code, because parts of the current 
code are copyrighted under GPL by ATT.    So part of the project is to ensure 
that we do not blindly copy any of the original daemon code.  If you have any 
questions there, please ask me.

I hope that helps answer your questions.

Best regards,

Kern

-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
Bacula-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/bacula-devel

Reply via email to