Search Amazon:

See if your .NET application is already running - Create a singleton application

In Visual Basic 6 you could use App.PrevInstance to see if your application was already running then issue the End statement to limit your application to a single instance.

In VB.NET you need to get the name of your main module and look for it in the collection of currently running processes. There are a number of ways to do this. Here is one way:

Imports System.Diagnostics

Dim aModuleName As String = Diagnostics.Process.GetCurrentProcess.MainModule.ModuleName

Dim aProcName As String = System.IO.Path.GetFileNameWithoutExtension(aModuleName)

    If Process.GetProcessesByName(aProcName).Length > 1 Then
        Application.Exit()
    End If

Another way in C# is:

    using System.Diagnostics;

    Process aProcess = Process.GetCurrentProcess();
    string aProcName = aProcess.ProcessName;
			
    if (Process.GetProcessesByName(aProcName).Length > 1)
    {
        Application.ExitThread();
    }
Sign In
  User Id 
  Password 


Submit Your Own Code and Articles




About TheScarms
About TheScarms

Ask me your programming questions

I read every email and answer all I can.

User Feedback: Be the first to add a comment! Items to Show:     

     
You must log in to post feedback.
Comment:    
 

If you use this code, please mention "www.TheScarms.com"

Email this page


TheScarms AppSentinel lets you securely copy protect and create evaluation versions of your software

TheScarms(tm) AppSentinel lets you quickly and easily create evaluation versions of your software and stop unauthorized copying and unregistered use of your programs!

Get your free
trial copy today!


      The World's Number 1 Web Host

© Copyright 2008 TheScarms