DotNet Blogger Just another VB/C# .Net Programming weblog

Revolution
iThemes
Elegant Themes
Theme Forest
WooThemes
One Theme
BlogOhBlog

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

Filed under: VB.Net No Comments

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

Sponsors

Pages

Categories

Archive

Meta