VB6如何实现多次打开程序都只打开第一个运行的本程序窗口
VB6如何实现多次打开程序都只打开第一个运行的本程序窗口例如,第一次在桌面上打开test.exe后运行一个窗口,当第二次在桌面上打开test.exe后,桌面运行仍然是第一...
VB6如何实现多次打开程序都只打开第一个运行的本程序窗口
例如,第一次在桌面上打开test.exe后运行一个窗口,当第二次在桌面上打开test.exe后,桌面运行仍然是第一次运行后的窗口,而不是再次打开一个新的窗口?
请问这是不是所谓的“消息”,如何实现?向您致以崇高的致意! 展开
例如,第一次在桌面上打开test.exe后运行一个窗口,当第二次在桌面上打开test.exe后,桌面运行仍然是第一次运行后的窗口,而不是再次打开一个新的窗口?
请问这是不是所谓的“消息”,如何实现?向您致以崇高的致意! 展开
1个回答
展开全部
VB中App.PrevInstance 可以用来判断当前程序是否已经执行。
在Form_Load 中加入下面得代码,或者(推荐)放在Sub Main()中
要打开第一次运行得窗口 也就是要激活它。
If App.PrevInstance Then
'程序实例已经运行
dim mHwnd as long
mHwnd= FindWindow(vbNullString, "程序名") '查找窗口句柄
SetActiveWindow mHwnd '激活窗口
End IF
说明:
SetActiveWindow和FindWindow是API函数,到API浏览器里面可以声明函数。
在Form_Load 中加入下面得代码,或者(推荐)放在Sub Main()中
要打开第一次运行得窗口 也就是要激活它。
If App.PrevInstance Then
'程序实例已经运行
dim mHwnd as long
mHwnd= FindWindow(vbNullString, "程序名") '查找窗口句柄
SetActiveWindow mHwnd '激活窗口
End IF
说明:
SetActiveWindow和FindWindow是API函数,到API浏览器里面可以声明函数。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询