Здравствуйте! У меня есть программа, которая при открытии должна проверять есть ли уже запущенная копия (экземпляр) этой программы т.е. чтобы 2 программы нельзя было запустить. Вот я пытался сделать, но не получилось....
Код | Private Declare Function GetForegroundWindow Lib "user32" () As Long Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long Dim hWndActive, window As Long
Private Sub Form_Load() window = FindWindow(vbNullString, "MyWindow") hWndActive = GetForegroundWindow() If (window <> 0) Then If hWndActive = window Then Text1.text = "1 program is running" Else Text1.text = "2 programs are running" Unload Me ' тобишь, если программа уже запущена - выключить ту, которую мы только что запустили End If End If End Sub
|
С Уважением, Иван! |