毕业论文开发语言企业开发JAVA技术.NET技术WEB开发Linux/Unix数据库技术Windows平台移动平台嵌入式论文范文英语论文
您现在的位置: 毕业论文 >> 开发语言 >> 正文

VB同一个程序,多次启动,怎么才能知道某次启动的进程唯一性

更新时间:2013-5-21:  来源:毕业论文

VB同一个程序,多次启动,怎么才能知道某次启动的进程唯一性

用PID的话,也许关掉进程后,再次启动该进程PID可能会一样(虽然这种可能性非常小)
怎样才能知道某个进程的唯一性呢,即使进程名相同,PID相同,我也知道进程是我那次启动的

再加上进程的启动时间,应该唯一了。

新建一个clsMutex的类模块


Visual Basic code?Option Explicit   Private Declare Function CreateMutex Lib "kernel32" Alias "CreateMutexA" (lpMutexAttributes As SECURITY_ATTRIBUTES, ByVal bInitialOwner As Long, ByVal lpName As String) As LongPrivate Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Long) As Long  Private Type SECURITY_ATTRIBUTES     nLength As Long    lpSecurityDescriptor As Long    bInheritHandle As LongEnd Type   Private Const ERROR_ALREADY_EXISTS = 183&   Private m_hMutex As Long  Public Function CheckMutex(MutexName As String) As Boolean      Dim s As SECURITY_ATTRIBUTES     m_hMutex = CreateMutex(s, 0, MutexName)           If Err.LastDllError = ERROR_ALREADY_EXISTS Then        CheckMutex = False    Else        CheckMutex = True    End If  End Function    Private Sub Class_Terminate()     CloseHandle m_hMutex End Sub


然后在主框体引用下就可以保持软件启动的唯一性。。不知道你是不是这个需求。。
'单一实例

Visual Basic code?Private mut As clsMutex   Private Sub Form_Load()     '保持单一实例     Set mut = New clsMutex     If Not mut.CheckMutex("an unique string") Then EndEnd Sub

设为首页 | 联系站长 | 友情链接 | 网站地图 |

copyright©youerw.com 优尔论文网 严禁转载
如果本毕业论文网损害了您的利益或者侵犯了您的权利,请及时联系,我们一定会及时改正。