Запрет одновременной работы двух копий приложения - VB

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

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

Все, собственно, в вопросе. Нужно запретить запуск второй копии скомпилированного в VB6 .exe файла. Как это можно сделать? Желательно попроще. Спасибо!

Решение задачи: «Запрет одновременной работы двух копий приложения»

textual
Листинг программы
Option Explicit
 
Private Declare Function CreateEvent Lib "kernel32" Alias "CreateEventW" (lpEventAttributes As Any, ByVal bManualReset As Long, ByVal bInitialState As Long, ByVal lpName As Long) As Long
Private Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) As Long
 
Private Const ERROR_ALREADY_EXISTS As Long = 183&
 
Dim hEvent As Long
 
Private Sub Form_Load()
    hEvent = CreateEvent(ByVal 0&, False, 0, StrPtr(App.Title))
    If hEvent Then
        If Err.LastDllError = ERROR_ALREADY_EXISTS Then
            MsgBox "ÏðèëîæåГ*ГЁГҐ óæå Г§Г*ГЇГіГ№ГҐГ*Г®"
        Else
            MsgBox "ГќГІГ® ïåðâûé ýêçåìïëÿð"
        End If
    Else
        ' ÏðîèçîøëГ* îøèáêГ*
        End
    End If
End Sub
 
Private Sub Form_Unload(Cancel As Integer)
    CloseHandle hEvent
End Sub

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


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

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

10   голосов , оценка 3.9 из 5
Похожие ответы