Как отменить повторные запуски, если программа уже запущена? - VB

Узнай цену своей работы

Формулировка задачи:

Подскажите, как можно сделать, чтоб если моя программа уже запущенна, то не загружалась вторая ? Желательно код... хотя объяснения и подсказки тоже пойдут...

Решение задачи: «Как отменить повторные запуски, если программа уже запущена?»

textual
Листинг программы
  1. Public Declare Function CreateSemaphore Lib 'kernel32' Alias 'CreateSemaphoreA' (ByVal lpSemaphoreAttributes As Long, ByVal lInitialCount As Long, ByVal lMaximumCount As Long, ByVal lpName As String) As Long
  2. Public Declare Function ReleaseSemaphore Lib 'kernel32' (ByVal hSemaphore As Long, ByVal lReleaseCount As Long, lpPreviousCount As Long) As Long
  3.  
  4. Global semHNDL As Long
  5.  
  6. Sub Main()
  7.  
  8.     Err.Clear
  9.  
  10.     semHNDL = 0
  11.  
  12.     semHNDL = CreateSemaphore(0, 0, 1, 'Cats_Tail')
  13.  
  14.     RC& = Err.LastDllError
  15.  
  16.     If (RC& <> 0) Or (semHNDL = 0) Then
  17.    
  18.        '::: Это - не первый экземпляр
  19.    
  20.        MsgBox 'Повторный запуск!'
  21.    
  22.        End
  23.    
  24.     End If
  25.  
  26.     Form1.Show
  27.  
  28. End Sub

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

11   голосов , оценка 4.273 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы