一个程序较长时间只在后台运行,vba使用appactivate激活这个程序时经常会失败,
但如果手动点击激活以后,在较短的时候内使用appactivate就能成功我已经把这个程序的响应等级设为高了,还是这样,请问怎么才能解决,我在模块中加入这样的代码:Decl...
但如果手动点击激活以后,在较短的时候内使用appactivate就能成功
我已经把这个程序的响应等级设为高了,还是这样,
请问怎么才能解决,
我在模块中加入这样的代码:
Declare Function ShowWindow Lib "user32" (ByVal hwnd As Long, ByVal nCmdShow As Long) As Long
Public Sub 我show()
ShowWindow 20304, SW_SHOW
' AppActivate 20304
End Sub
没有反应.但把appactivate语句的注释去掉,可以正常激活,怎么解决啊
对了,我是64位的win8.1,和这有关系吗 展开
我已经把这个程序的响应等级设为高了,还是这样,
请问怎么才能解决,
我在模块中加入这样的代码:
Declare Function ShowWindow Lib "user32" (ByVal hwnd As Long, ByVal nCmdShow As Long) As Long
Public Sub 我show()
ShowWindow 20304, SW_SHOW
' AppActivate 20304
End Sub
没有反应.但把appactivate语句的注释去掉,可以正常激活,怎么解决啊
对了,我是64位的win8.1,和这有关系吗 展开
1个回答
展开全部
使用API函数激活后,再获取对象。
声明(放在模块的声明中):
Declare Function FindWindow Lib "User32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Declare Function ShowWindow Lib "user32" (ByVal hwnd As Long, ByVal nCmdShow As Long) As Long
在函数里调用,如:
ShowWindow FindWindow(vbNullString, "无线宽带"),5
声明(放在模块的声明中):
Declare Function FindWindow Lib "User32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Declare Function ShowWindow Lib "user32" (ByVal hwnd As Long, ByVal nCmdShow As Long) As Long
在函数里调用,如:
ShowWindow FindWindow(vbNullString, "无线宽带"),5
追问
说字数太多,就在原问题里追问了
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询