How to Check whether a Windows Service is running or not by passing the service name
Here is the awesome VB.Net code to check whether the windows service is running or not by passing the service name:
Instructions:
- Open a New Console application
- Add a new bas module called modMain
- Set a reference to System.ServiceProcess (Go to Project > Add Reference and select System.ServiceProcess under .Net tab and click OK.)
- Copy the following code to modMain bas module
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | Module modMain Sub Main() If IsServiceRunning("Print Spooler") Then Console.WriteLine("Print Spooler Service Running in this machine." & vbCrLf) Else Console.WriteLine("Print Spooler Service not running in this machine; or the service doesn't exists.\n" & vbCrLf) End If Console.WriteLine("Hit Enter to exit.") Console.Read() End Sub Function IsServiceRunning(ByVal sServiceName As String) As Boolean Try Dim myServiceController As ServiceProcess.ServiceController myServiceController = New ServiceProcess.ServiceController(sServiceName) Return myServiceController.Status = ServiceProcess.ServiceControllerStatus.Running Catch ex As Exception Console.WriteLine(ex.ToString) Return False End Try End Function End Module |
Project Type: Console
Language: VB.Net
Tested with: VS 2008
How to Check whether the application/process is running or not by passing the process name
Here is the awesome VB.Net code to check whether the application/process is running or not by passing the process name:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | Module modMain Sub Main() 'Check whether acrobat is running or not If IsProcessRunning("acrobat") Then Console.WriteLine("Yes. Acrobat is running") Else Console.WriteLine("No. Acrobat is not running") End If End Sub Private Function IsProcessRunning(ByVal sProcess As String) As Boolean For Each oProc As Process In Process.GetProcessesByName(sProcess) Return True Next End Function End Module |
Project Type: Console
Language: VB.Net
Tested with: VS 2008
How to Check whether the application is running in IDE or as EXE
In our Windows Application, some times we may need to check whether our application is running in IDE or is running as EXE. A typical example would be, we might use Development Server while working in development/debug mode. Once the application is deployed we will be using Live Server. It is very hard if you keep on chaning the server names each time like while dev change the server to development and while live change it back to live. We might make mistakes while switching these servers. To avoid these difficulties we can use the following function to see whether our application is running in IDE or running as standalone EXE.
1 2 3 4 5 6 7 8 9 10 11 12 | Module modMain
Sub Main()
If IsApplicationRunningInIDE() Then
Console.WriteLine("I am working on IDE")
Else
Console.WriteLine("I am working on standalone EXE")
End If
End Sub
Public Function IsApplicationRunningInIDE() As Boolean
Return System.Diagnostics.Debugger.IsAttached()
End Function
End Module |
Project Type: Console
Language: VB.Net
Tested with: VS 2008
How to properly terminate the application by passing the process name
We should not directly kill the process. We should properly close the main window of the application using CloseMainWindow().
Here is the proper way of terminating the application in VB.Net. The code below will request the application to close properly and will wait for 10 seconds. if the application is not closed in 10 seconds then it will kill the process.
As this is console application you cannot directly use the Application.DoEvents method. You need to add reference to System.Windows.Forms using Project > Add Reference and select System.Windows.Forms and hit OK.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | Module modMain Sub Main() 'How to call this function: 'This will return true if the process is terminated; and false if unable to terminate the process Console.WriteLine(TerminateProcess("firefox")) 'This will terminate the firefox application End Sub Public Function TerminateProcess(ByVal sProcessName As String) As Boolean Dim lTimer As Long Try For Each oProc As Process In Process.GetProcessesByName(sProcessName) 'To ask the process to exit. oProc.CloseMainWindow() lTimer = CLng(Microsoft.VisualBasic.Timer) Do Until oProc.HasExited System.Windows.Forms.Application.DoEvents() If Microsoft.VisualBasic.Timer - lTimer > 10 Then oProc.Kill() End If Loop Next oProc Return True Catch ex As Exception Console.WriteLine("Error 003: Unable to close the application " & sProcessName) Return False End Try End Function End Module |
Project Type: Console
Language: VB.Net
Tested with: VS 2008
How to create a simple internet browser in Visual Basic 2008
Here is the presentation of how to create a simple web browsers using Visual Basic 2008:
Author: SimpleVbTuts






