Hello!
Short version:
How do I configure my install project such that the user will be
prompted to enter user credentials for each and every .NET Service that
it installs?
Long version:
I have a solution that contains a number of VB.NET projects, some of
which are class libraries, windows applications, and windows services.
In addition to these, I have two install projects. One is for the
system executables and services (and their libraries), and the other is
for workstation applications (and their libraries). My question has to
do with the installation of multiple services via one MSI package.
Here is how the services are set up: Each service (there are 5) is its
own VB.NET Project. Each VB.NET Project contains an installer class
for its service. The install project is configured to install these
services, and it does so successfully.
HOWEVER, these services each need to be run with specific user
credentials, not the credentials of the person executing the MSI
package. How do I configure my install project such that the user will
be prompted to enter user credentials for each and every .NET Service
that it installs?
Thanks!
Phil Wilson - 27 Nov 2006 21:11 GMT
I'd recommend that you also ship a forms app that asks the user once for the
credentials to use, and then enumerates the services that need configuring,
using ChangeServiceConfig for all of your services, stops them then starts
them.
You could set the ServiceProcessInstaller Account property to
ServiceAccount.User to cause the system to prompt at install time, five
times, if there are really five separate accounts involved.

Signature
Phil Wilson
[Microsoft MVP Windows Installer]
> Hello!
>
[quoted text clipped - 23 lines]
>
> Thanks!
jar349@gmail.com - 28 Nov 2006 22:47 GMT
Phil,
That worked, thank you! Unfortunately, yes - each service runs under a
different user account. I didn't design it; I just get paid to make it
work. And that I did, thanks to your help.
John