Can you install a NserviceBus windows service from within a .Net application? - windows-services

Right now we install our NserviceBus using a .bat file that looks something like this:
NServiceBus.Host.exe /install /serviceName:"Cool Service" /displayName:"Cool service Name" /description:"Cool Servcie Desc" /username:"Skroob" /password:"1234" NServiceBus.Production
pause
I was wondering if it is possible to install the service using a .Net application. I have looked at TopShelf and the ServiceController namespace, but I can not seem to figure out how to make it work.

Related

How to bundle Electron application and windows service together?

I am very new with electron application. I need some help with election installation.
I have an Electron desktop application and a windows service.
I can start and stop my pre installed services by using sudo-prompt package.
I am creating windows installer by using electron-winstaller package.
But I want to bundle my windows service along with my electron application. My requirement is when I install my electron package then it should install my service also, when I uninstall my package then that service should be uninstalled.
Please help me out. Any clue, Any suggestions will be appreciated.
If you think this should be achieved with something else then please do suggest me.
Electron's windows installer packager strikes me a specific case tool that would likely hit limitations in scenarios like this. I would use a general case tool instead such as the Free and Open Source Windows Installer XML Toolset aka WiX. I would also use with that another FOSS application called Industrial Strength Windows Installer XML aka IsWiX.
WiX allows you to describe and build MSI databases using an XML/XSD domain specific language. It supports MSBuild for easy integration with your CI/CD pipeline. IsWiX* is a set of project templates and graphical designers that provide an opinionated project structuring (scaffolding) and greatly speeds up the learning curve and implementation. For example, this installer you describe could be done without writing a single line of XML.
For more information see: https://github.com/iswix-llc/iswix-tutorials
The desktop-application and windows-service tutorials should** show you everything you need to know to author this installer. Basically follow the desktop-application all the way through and then skip to the final portion of the windows-service tutorial where you define the windows service.
I'm the maintainer of IsWiX
** This assumes your service exe is a proper Windows service that interfaces with the windows service control manager. If it's really just a console app that runs as a service you will need to include a program such as srvany.exe. This will require one line of hand crafted XML to extended the service definition in the registry with the proper command line value to be passed to your exe. An example can be found here: Wix installer to replace INSTSRV and SRVANY for user defined service installation

Can one install a vNext (C# 6) console app as a Windows service

In previous versions of .Net, there were some different methods of creating a project that could run as a console app or be installed as a service.
Things like TopShelf or other approaches like: .NET console application as Windows service
This is a nice convenience for development and later deployment. I put together a vNext console app using a similar approach to the accepted answer here: .NET console application as Windows service.
The issue is that vNext runs things in a different way. If you create output, it no longer gives you an exe to install. Instead you get a nuget package and a .cmd file that will tell dnx to host your application. The command file looks like:
dnx --appbase "$(dirname $0)" Microsoft.Framework.ApplicationHost My.vNext.Service $#
So my question is: Is there a way to install this thing as a Windows service given the new console application approach?

Create installer with Installshield that installs Windows Service

I have a windows service that installs itself by executing it in a cmd with the command line --install. This service also knows how uninstall itself by passing the --uninstall param in a cmd.
I need to create a MSI installer that installs this service and start it. I have tried by using Components in Installshield and using Custom Actions but not getting the rights results either way.
I need some help here. Thanks
Please see my answer under Wix installer to replace INSTSRV and SRVANY for user defined service installation
The WiX ServiceInstall and ServiceControl elements are abstractions for the underlying Windows Installer ServiceInstall and ServiceControl tables. InstallShield uses this same feature but instead of authored as XML it's authored in the components view under the advanced settings | services area of the component.
In general it's not a windows installer best practice to call a custom action to register the service. Instead figure out the details being done by the --install command and author them natively into these tables using InstallShield.
Installing, Controlling, and Configuring Windows Services

How do i run a ServiceStack console project as a Windows Service?

I have create a ServiceStack console application that works great, but of course, I have to leave it running after triggering it from a command prompt. I want to run this as a Windows Service.
I'm reviewing this wiki page which states that you can run SS as a Windows Service.
https://github.com/ServiceStack/ServiceStack/wiki/Self-hosting
I was not totally clear on how to do this. This StarterTemplate is referenced from 2 years ago. Do I clone this project and then copy my code into it?
https://github.com/ServiceStack/ServiceStack.Examples/tree/master/src/StarterTemplates/WinServiceAppHost
The easiest way is to create a ServiceStack Windows Service Empty project in ServiceStackVS VS.NET Extension.
Otherwise you can clone the WinService project, and create a new Windows Service project from Visual Studio and copy the approach in Program.cs.
A more recent ServiceStack Windows Service project is the Razor Rockstars website running in a Windows Service Host, the template of which was based on the ServiceStack.Examples Starter template.
I use topshelf to run a servicestack console app as a windows service. It works really well for me. https://github.com/Topshelf/Topshelf

c++ builder TService setup

I have build a TService application on c++ builder 2009 and I want to setup the service. I tried with InstallShield Premier, but I didn't manage to setup the service. Can anyone guide me through it?
So far I tried just to run the exe file but nothing happened. Then I built a setup with InstallShield, but when I run setup....nothing! I found a tut for InstallShield and Services, but it was saying something about Component in View list, that I didn't find.
At last, I tried the installutil command , but I get the message : installutil not recognised as internal command.
To install a service all you need to do is run the following command from a command prompt or from the run command dialog.
C:\MyService.exe /install
To uninstall the service:
C:\MyService.exe /uninstall
Replace MyService.exe with your service filename.
Once the services is installed you can edit the service settings in the Windows Service Manager. To access this, run the following from the run dialog or command prompt.
SERVICES.MSC
If you want to debug your service from within C++Builder, you need to create a application wrapper for it (there may be other ways to debug your service but this is the only way I have managed to do it).

Resources