VB初心者質問スレ Part7
■ このスレッドは過去ログ倉庫に格納されています
0030デフォルトの名無しさん
NGNGでWin32APIをつかって、以下のようなコードを書いてみたんですが、なんでか
排他がかかってないみたいなんです(2つ起動してボタン押したらどちらも"最初"がでてきてしまう)。
CreateMutexとかの指定がわるいんでしょうか?
Dim m_hMutex As Long
Public Function MutexCheck() As Boolean
Dim PrevhMutex As Long
PrevhMutex = OpenMutex(MUTANT_ALL_ACCESS, 0, "MyMutex")
If PrevhMutex Then
CloseHandle PrevhMutex
MutexCheck = False
MsgBox "二重起動"
Exit Function
Else
m_hMutex = CreateMutex(0, 0, "MyMutex")
MsgBox "最初"
MutexCheck = True
End If
End Function
Private Function MutexRelease()
ReleaseMutex m_hMutex
CloseHandle m_hMutex
End Function
Private Sub Command1_Click()
If MutexCheck = False Then
' If App.PrevInstance Then
MsgBox "二重起動"
Else
Sleep (3000)
MsgBox "最初"
End If
' MutexRelease
End Sub
■ このスレッドは過去ログ倉庫に格納されています