Private Sub Form_Initialize() If App.PrevInstance Then end End If End Sub
错! D版MSDN-----你抢分的好帮手!!!MSDN:
PrevInstance 属性 返回一个值,该值指示是否已经有前一个应用程序实例在运行。语法object.PrevInstanceobject 所在处代表一个对象表达式,其值是“应用于”列表中的一个对象。说明能够在 Load 事件过程中,使用此属性来指示是否已经运行了应用程序的一个实例。根据应用程序的要求,在 Microsoft Windows 操作环境中可能每次只想运行一个实例。注意 由于运行 Windows NT 的计算机可以支持多个平台,如果使用旨在同分布式 COM 一同使用的部件,则会导致下列情况: 用户平台上的客户程序请求部件提供一个对象,因为部件物理地位于同一台机器上,部件是在用户平台上启动的。 相应地,在另一台使用分布式 COM 的计算机上的客户程序请求部件提供一个对象。第二个部件的实例在系统平台上启动。 现在有两个部件实例运行在不同平台上的同一台 NT 计算机上。这种情况并不是问题,除非部件的作者将对 App.PrevInstance 的测试放入部件启动代码以防止部件的多个复本运行在同一台计算机上。在这种情况下,远程部件创建将会失败。
例子:
If App.PrevInstance Then
MsgBox App.Title & "已在运行!", vbInformation, msgPrompt
End
Exit Sub
End If
Private Sub Form_Load
if App.Previnstance then
MsgBox "程序正在运行,请检查窗口是否被最小化。"
End if
End Sub
If App.PrevInstance Then
msg1 = "程序已运行,请检查是否最小化!"
MsgBox msg1, vbCriticalEnd
End If
End Sub
建议搜索一下以前的贴子
App.Prevlnstance 如果程序路径变了,它就不管用了
If App.PrevInstance Then
end
End If
End Sub
D版MSDN-----你抢分的好帮手!!!MSDN:
PrevInstance 属性
返回一个值,该值指示是否已经有前一个应用程序实例在运行。语法object.PrevInstanceobject 所在处代表一个对象表达式,其值是“应用于”列表中的一个对象。说明能够在 Load 事件过程中,使用此属性来指示是否已经运行了应用程序的一个实例。根据应用程序的要求,在 Microsoft Windows 操作环境中可能每次只想运行一个实例。注意 由于运行 Windows NT 的计算机可以支持多个平台,如果使用旨在同分布式 COM 一同使用的部件,则会导致下列情况: 用户平台上的客户程序请求部件提供一个对象,因为部件物理地位于同一台机器上,部件是在用户平台上启动的。
相应地,在另一台使用分布式 COM 的计算机上的客户程序请求部件提供一个对象。第二个部件的实例在系统平台上启动。
现在有两个部件实例运行在不同平台上的同一台 NT 计算机上。这种情况并不是问题,除非部件的作者将对 App.PrevInstance 的测试放入部件启动代码以防止部件的多个复本运行在同一台计算机上。在这种情况下,远程部件创建将会失败。