Если ваше приложение находится в VB.NET 2.0-3.5, самый простой способ сохранить один экземпляр программы - использовать «Свойства Windows Application Framework». Чтобы попасть туда, щелкните правой кнопкой мыши по названию вашего проекта и перейдите в «Свойства». Оказавшись там, установите флажок «Сделать один экземпляр приложения».
Вы также можете использовать ApplicationEvents.vb, чтобы показать пользователю, что он запустил вашу программу во второй раз. Вы можете легко создать / просмотреть это в том же окне свойств, нажав кнопку «Просмотр событий приложения». Там вы можете выбрать подпрограмму MyApplication_StartupNextInstance и ввести там код, например:
Private Sub MyApplication_StartupNextInstance(ByVal sender As Object, ByVal e As Microsoft.VisualBasic.ApplicationServices.StartupNextInstanceEventArgs) Handles Me.StartupNextInstance
MessageBox.Show("This program is already running. If you do not see the program running, please check your " _
& "Windows Task Manager for this program name in the 'Processes' Tab." & vbNewLine & vbNewLine & "WARNING: " _
& " If you terminate the process, you will terminate the only instance of this program!", My.Application.Info.ProductName.ToString _
& " is Running!", MessageBoxButtons.OK, MessageBoxIcon.Warning)
End Sub
Дайте мне знать, если это поможет! JFV