VBGood网站全文搜索 Google

搜索VBGood全站网页(全文搜索)
首页 - 经验之谈 - 查找程序的前一个运行结果
发表评论(0)作者:不详, 平台:VB6.0+Win98, 阅读:7234, 日期:2003-08-29
    在Visual Basic 6中,你可以利用App.PrevInstance属性来确认程序的前一个运行结果是否已经在运行之中。在Visual Basic .NET中这一属性已经不存在,但是,你可以使用System.Diagnostics.Process来获取相似的结果。


可以从获取当前过程的名称为开始,你可以通过调用过程对象的GetCurrentProcess方法来达到这一目的。这是一个公共的方法,所以无需建立一个过程对象的实例。

Dim strProcessName As String

strProcessName = Diagnostics.Process.GetCurrentProcess.ProcessName

下一步即为查找当前匹配的过程。可以使用GetProcessesByName 方法达到这一要求。还有另一个过程是对象的静态方法,它使用过程的名称,返回所有的匹配过程。

If Diagnostics.Process.GetProcessesByName( _
                       strProcessName).Length > 1 Then
    注释:More than one instance was found
End If

如果这是程序的第一个运行结果,则应该只有一个匹配过程。如果能够找到多个运行结果,那么一定是程序的多个版本在运行之中。

当你想确认用户只运行程序的一个结果时,这一方法非常有用。