Build and Install service on your pc:
Go to build menu and choose Build NewService1 – This will create an EXE file in our project’s \bin\Release folder.
Next we will need to use the InstallUtil.exe to install the service into the PC.
InstallUtil.exe is part of the Dot Net distribution package.
It is found in the c:\windows\Microsoft.net\Firmware\v2.0.50727\ folder.
Its command line usage is:
Install Service:
Installutil.exe PATH_TO_EXE.exe
Uninstall Service:
InstallUtil.exe PATH_TO_EXE.exe /u
For this example, I changed directory into the c:\windows\Microsoft.net\Firmware\v2.0.50727\ folder.
Then I ran:
InstallUtil.exe “c:\vb2005\projects\NewService1\bin\Release\NewService1.exe”
The installer should give you lots of text, It should end by saying:
The Commit phase completed successfully.
The transacted install has completed.
If there are any error messages in the install of the service, it will list them.
After successful installation, you should see the Service listed as NewService1 in the Service Manager.
To get the service manager, Right click on My Computer on the desktop, and choose Manage.
Then choose Services and Applications > Services. Right-Click on the NewService1 and choose Start.
Then go to System Tools > Event Viewer > Application, and you should see your log entries.
The service will make one entry saying “It is running” then disable the Timer so your log doesn’t fill up.
To install this service on another computer:
Prerequisites: You need to have .net distributable 2.0 on the target PC.
You need to copy over the files in the Release folder to the target computer. Then inside the c:\windows\Microsoft.net\Firmware\v2.0.50727\ folder run the InstallUtil.exe program as described previously.
That’s It.
Programmers – Use your talents to make some money online. Click Here to Read More
This code runs fine, and the service runs OK, but it stops the service after approx 2 minutes. I can’t see anything that is telling the service to stop, and also, if I did want to programmatically stop the service, how would I go about this?
Great intro into getting a service up and running with vb. Thanks! I was able to get the service running on Windows 7 64-bit with .net runtime 4.x only after switching to the standard (x86) directory for InstallUtil.exe _and_ running the command prompt as Administrator. Wish there was more of an explanation of the code, but that’s just my unfamiliarity with all the shiny new goodness of the VB lang these days and the .Net environment in general. Again, great intro (for a seasoned programmer, IMHO)
error is “Warning 1 Access of shared member, constant member, enum member or nested type through an instance; qualifying expression will not be evaluated.
can anyone pls help on this when i build ,thanks in advance
error in mylog.SourceExists
Private Sub Timer1_Elapsed(ByVal sender As System.Object, ByVal e As _
System.Timers.ElapsedEventArgs) Handles Timer1.Elapsed
Dim MyLog As New EventLog() ‘ create a new event log
‘ Check if the the Event Log Exists
If Not MyLog.SourceExists(“NewService1”) Then ‘error here
MyLog.CreateEventSource(“NewService1”, “NewService1 Log”) ‘ Create Log
End If
MyLog.Source = “NewService1”
MyLog.WriteEntry(“NewService1 Log”, “It is running”, EventLogEntryType.Information)
‘disable the timer so you dont fill up the log
Timer1.Enabled = False
End Sub
i am sorry for untidy code, here i repost:
error is MyLog.SourceExists
Private Sub Timer1_Elapsed(ByVal sender As System.Object, ByVal e As _
System.Timers.ElapsedEventArgs) Handles Timer1.Elapsed
Dim MyLog As New EventLog() ‘ create a new event log
‘ Check if the the Event Log Exists
If Not MyLog.SourceExists(“NewService1”) Then
MyLog.CreateEventSource(“NewService1”, “NewService1 Log”) ‘ Create Log
End If
MyLog.Source = “NewService1”
MyLog.WriteEntry(“NewService1 Log”, “It is running”, EventLogEntryType.Information)
‘disable the timer so you dont fill up the log
Timer1.Enabled = False
End Sub
i am using vb.net 2008
when i look into my newservice1 log file :
[code]
Installing assembly ‘c:\newservice1\newservice1\bin\release\newservice1.exe’.
Affected parameters are:
logtoconsole =
assemblypath = c:\newservice1\newservice1\bin\release\newservice1.exe
logfile = c:\newservice1\newservice1\bin\release\newservice1.InstallLog
Installing service NewService1…
Service NewService1 has been successfully installed.
Creating EventLog source NewService1 in log Application…
Rolling back assembly ‘c:\newservice1\newservice1\bin\release\newservice1.exe’.
Affected parameters are:
logtoconsole =
assemblypath = c:\newservice1\newservice1\bin\release\newservice1.exe
logfile = c:\newservice1\newservice1\bin\release\newservice1.InstallLog
Restoring event log to previous state for source NewService1.
Service NewService1 is being removed from the system…
Service NewService1 was successfully removed from the system.
[\code]
any commend?
Impressive; I have got the code example working, but have 1 or 2 minor silly questions:
1. The main obstacle for not being able to figure (parts of this) out myself, is the fact that ‘ServiceInstaller1’ and ‘ServiceProcessInstaller1’ are not listed in the Toolbox. Why is that? What other ‘gems’ are there, that I can’t see in the Toolbox I wonder.
2. A bit silly, but…where do I add my custom code I want the service to run?