我要开机自动启动一个程序111.exe,但是不希望出现多个111.exe的进程,就是说第二个用户登录的时候,自动启动111.exe进程的时候弹出警告,不再运行,如何实现??
我用app.PrevInstance做过,但那只是在单用户的时候才有效,遍历进程是一种方法,有没有其他简单的方法,请教了。
我用app.PrevInstance做过,但那只是在单用户的时候才有效,遍历进程是一种方法,有没有其他简单的方法,请教了。
If App.PrevInstance Then
MsgBox "已经启动"
End
End If
GlobalFindAtom找当前global atom table 是不是有了一个GlobalAddAtom 添加的atom
有的话,退出并弹出警告,没有的话,用 GlobalAddAtom 添加一个atom
程序结束,一定要用和GlobalDeleteAtom清除那个atom
'Module1
Option ExplicitPrivate m_hFile As IntegerSub Main()
If Not LockFile(App.Path & "\" & App.EXEName & ".txt") Then
MsgBox "已经有实例在运行!", vbExclamation
Exit Sub
End If
Form1.Show
End SubFunction LockFile(ByVal FileName As String) As Boolean
On Error GoTo ErrHandler m_hFile = FreeFile()
Open FileName For Output Access Write Lock Write As #m_hFile LockFile = True
ExitEntry:
Exit Function
ErrHandler:
Resume ExitEntry
End FunctionSub UnloadFile()
On Error Resume Next
Close #m_hFile
On Error GoTo 0
End Sub
'Form1
Option ExplicitPrivate Sub Form_Unload(Cancel As Integer)
UnloadFile
End Sub