No matter what combination I try I wind up with the following error
when attempting to install a service using the host...

C:\dev\rsb-spike\Services\bin\Debug>Rhino.ServiceBus.Host.exe
/action:Install /asm:"Services.dll" /name:"ApplicationServices"
Installing service ApplicationServices...
Creating EventLog source ApplicationServices in log Application...
System.InvalidOperationException: Cannot get service file name.
   at System.ServiceProcess.ServiceInstaller.Install(IDictionary stateSaver)
   at System.Configuration.Install.Installer.Install(IDictionary stateSaver)
   at Rhino.ServiceBus.Host.Actions.InstallAction.Execute(ExecutingOptions
options) in C:\dev\open-source\rhino-tools.ti
p\trunk\rhino-service.bus\Rhino.ServiceBus.Host\Actions\InstallAction.cs:line 18
   at Rhino.ServiceBus.Host.Program.Main(String[] args) in
C:\dev\open-source\rhino-tools.tip\trunk\rhino-service.bus\Rh
ino.ServiceBus.Host\Program.cs:line 31

I hacked on it for a bit and was able to get the service to install by
changing the InstallAction implementation to the following:

public void Execute(ExecutingOptions options)
{

    var installer = new ProjectInstaller
    {
        DisplayName = options.Name,
        Description = options.Name,
        Context = new InstallContext()
    };
    installer.Context.Parameters.Add("assemblypath",
this.GetType().Assembly.Location);
    installer.Install(new Hashtable());
    using (var system = Registry.LocalMachine.OpenSubKey("System"))
    using (var currentControlSet = system.OpenSubKey("CurrentControlSet"))
    using (var services = currentControlSet.OpenSubKey("Services"))
    using (var service = services.OpenSubKey(installer.ServiceName, true))
    {
        var path = (string)service.GetValue("ImagePath");

        options.Action = Action.Server;

        service.SetValue("ImagePath", path + options);
    }
}

Notice the addition of the "assemblypath" context and then changing
the Action to Server. I can now install and uninstall but the service
won't start - I'm getting the following message in the event viewer:

"Service cannot be started. The service process could not connect to
the service controller"

Any thoughts?

Thanks,
Matt

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Rhino Tools Dev" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/rhino-tools-dev?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to