Windows Installer
From Unofficial BOINC Wiki
Contents |
[edit] General
The BOINC Client Software can be installed in any of several modes:
- Single-User Installation
- Shared installation
- Service installation
Each of these installation modes has advantages and disadvantages.
[edit] Single-User Installation
This is the recommended mode. If you check the 'run on startup' box, BOINC Client Software will run while you (the installing user) are logged in.
The BOINC Client Software is listed in the Start menu of the installing user, but not other users.
The 'Show graphics' command in the BOINC Manager will work only for the installing user. The BOINC Screensaver will only show graphics from the Science Applications only for the installing user (other users can run the screen saver but will see textual information only).
[edit] Shared installation
If you check the 'run on startup' box, BOINC Client Software runs whenever any user is logged in.
The BOINC Client Software is listed in the Start menu of all users.
While BOINC Client Software is running, it runs as a particular user (either the first user to log in, or the first to run the BOINC Client Software). The 'Show graphics' command in the BOINC Manager, will work only for this user. The BOINC Screensaver will only show application graphics only for this user (other users can run the screen saver but will see textual information only).
[edit] Service installation
The BOINC Client Software runs all the time (even when no one is logged in).
The BOINC Client Software is listed in the Start menu of the installing user, but not other users.
The 'Show graphics' command in the BOINC Manager will not work for any user. The BOINC Screensaver will only show textual information.
[edit] Customizing the Installer
The new BOINC Installer for Microsoft Windows® is an MSI package.
[edit] Active Directory Deployment
Suppose you want to modify it so that you can deploy the BOINC Client Software across a Windows network using Active Directory, and have all the PCs attached to a particular account. Here is how to do this:
- Download the BOINC client package and execute it with the /a parameter.
- Drop the files to a share that can be accessed by all the computers on the network.
- Using Microsoft ORCA, or some other MSI packaging tool, create an MSI Transform that contains the account_*.xml files of the projects you have already attached too on another machine plus the following parameters:
- Single-User Install:
Parameter Description INSTALLDIR The location to install BOINC to.
Example: 'C:\BOINC'SETUPTYPE The type of installation to perform.
Valid Values: 'Single'.ALLUSERS Whether the shortcuts appear for just one user or all users.
Valid Values: '0' for Single.ENABLESCREENSAVER Whether to automatically enable the screensaver.
Valid Values: '0' for disabled, '1' for enabled.ENABLELAUNCHATLOGON Whether to automatically start BOINC when the installing user or all users sign on to the computer.
Valid Values: '0' for disabled, '1' for enabled.LAUNCHPROGRAM Whether to automatically launch BOINC Manager after setup completes.
Valid Values: '0' for disabled, '1' for enabled.
- Shared install:
Parameter Description INSTALLDIR The location to install BOINC too.
Example: 'C:\BOINC'SETUPTYPE The type of installation to perform.
Valid Values: 'Shared'.ALLUSERS Whether the shortcuts appear for just one user or all users.
Valid Values: '1' for shared.ENABLESCREENSAVER Whether to automatically enable the screensaver.
Valid Values: '0' for disabled, '1' for enabled.ENABLELAUNCHATLOGON Whether to automatically start BOINC when the installing user or all users sign on to the computer.
Valid Values: '0' for disabled, '1' for enabled.LAUNCHPROGRAM Whether to automatically launch BOINC Manager after setup completes.
Valid Values: '0' for disabled, '1' for enabled.
- Service Install:
Parameter Description INSTALLDIR The location to install BOINC too.
Example: 'C:\BOINC'SETUPTYPE The type of installation to perform.
Valid Values: 'Service'.ALLUSERS Whether the shortcuts appear for just one user or all users.
Valid Values: '1' for service.ENABLESCREENSAVER Whether to automatically enable the screensaver.
Valid Values: '0' for disabled, '1' for enabled.ENABLELAUNCHATLOGON Whether to automatically start BOINC when the installing user or all users sign on to the computer.
Valid Values: '0' for disabled, '1' for enabled.LAUNCHPROGRAM Whether to automatically launch BOINC Manager after setup completes.
Valid Values: '0' for disabled, '1' for enabled.SERVICE_DOMAINUSERNAME Which user account should the service use.
Valid Values: '%ComputerName%\%UserName%'
%ComputerName% can be either the local computername or a domain name.
%UserName% should be the User Name of the user to use.SERVICE_PASSWORD The password for the account described in the SERVICE_DOMAINUSERNAME property.
Valid Values: '%Password%'
%Password% the password for the SERVICE_DOMAINUSERNAME user account.SERVICE_GRANTEXECUTIONRIGHT Grant the above user account the 'Logon as a Service' user right.
Valid Values: '0' for disabled, '1' for enabled.
[edit] Command Line Deployment
An example for the single-user install would be:
msiexec /i boinc.msi /qn /l c:\boincsetup.log SETUPTYPE='Single' ALLUSERS=0 ENABLESCREENSAVER=0 ENABLELAUNCHATLOGON=0 LAUCHPROGRAM=0
An example for the shared install would be:
msiexec /i boinc.msi /qn /l c:\boincsetup.log SETUPTYPE='Shared' ALLUSERS=1 ENABLESCREENSAVER=0 ENABLELAUNCHATLOGON=0 LAUCHPROGRAM=0
An example for the service install would be:
msiexec /i boinc.msi /qn /l c:\boincsetup.log SETUPTYPE='Service' ALLUSERS=0 ENABLESCREENSAVER=0 ENABLELAUNCHATLOGON=0 LAUCHPROGRAM=0 SERVICE_DOMAINUSERNAME='%ComputerName%\%UserName%' SERVICE_PASSWORD='%Password%' SERVICE_GRANTEXECUTIONRIGHT=1
[edit] Technical Details
BOINC's Windows installer installs several programs:
- BOINC Daemon: the program that manages file transfers and execution of applications.
- BOINC Manager: the GUI to the core client.
- BOINC Screensaver: a program that runs when the machine is idle. Typically it sends a message to the core client, telling it to do screensaver graphics.
[edit] Single-User Installation
Say the install is done by user X. The manager runs automatically when X logs in. The manager starts up the BOINC Daemon. The BOINC Daemon runs as a regular process, not a service. If the manager crashes the BOINC Daemon continues to run. The user can re-run the manager. When the user logs out, the manager, the BOINC Daemon, and any running applications exit.
Files (in the BOINC directory) are owned by user X.
Detection of mouse/keyboard is done by the BOINC Manager.
The screensaver works as it currently does, except that we'll pass window-station/desktop info so that the password-protected screensaver mechanism will work.
Other users can't run the BOINC Manager.
[edit] Shared Installation
Processes run as whoever is logged in. If someone logs in while BOINC is already running, it will not start a new instance of BOINC.
[edit] Service Installation
The BOINC Daemon runs as a service, started at boot time. Normally it runs as the installing user. In some Versions of windows it may install as the Network Service account.
The BOINC Manager checks mouse/keyboard input and conveys idle state to the BOINC Daemon. Only the installing user can run the BOINC Manager. Files are accessible only to the installing user.
[edit] UCB Source
[edit] Copyright ©
- 2005 University of California
- 2005 Paul D. Buck
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation.

