永发信息网

在VB中,如何通过FindWindow查找已知标题中的一部分文字的窗口的句柄

答案:2  悬赏:30  手机版
解决时间 2021-12-02 22:22
在VB中,如何通过FindWindow查找已知标题中的一部分文字的窗口的句柄
最佳答案
您好,您可以参考以下代码:
Private Declare Function GetDesktopWindow Lib "user32" () As Long
Private Declare Function GetWindow Lib "user32" (ByVal hwnd As Long, ByVal wCmd As Long) As Long
Private Declare Function GetWindowText Lib "user32" Alias "GetWindowTextA" (ByVal hwnd As Long, ByVal lpString As String, ByVal cch As Long) As Long
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long

private sub getprocessname()
Dim lngDeskTopHandle As Long
  Dim lngHand As Long
  Dim strName As String * 255
  dim a as long
  lngDeskTopHandle = GetDesktopWindow()
  lngHand = GetWindow(lngDeskTopHandle, GW_CHILD)
  Do While lngHand <> 0
     GetWindowText lngHand, strName, Len(strName)
     lngHand = GetWindow(lngHand, GW_HWNDNEXT)
     If Left$(strName, 1) <> vbNullChar Then
        if instr(strname , "123") then
            a = FindWindow(vbNullString, CStr(strName))'此处a即所需句柄,您可以在此处中断并获取该句柄,或将句柄数据写入数组以获取所有包含"123"的窗口句柄
        end if
     End If
  Loop如果本次回答对您有帮助,请您采纳以支持我们的发展,谢谢!!
追问GW_CHILD
GW_HWNDNEXT
这2个常量好像没定义,是不是定义了就可以了,我测试不成功,发现的这个问题追答Private Const GW_CHILD = 5
Private Const GW_HWNDNEXT = 2
我对我的失误非常抱歉,由此带来的不便,请你理解,谢谢!
全部回答
我也不知道怎么搞的我也等待 .
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
中国移动手机卡有哪几种类型
— 做人最起码规矩得懂,既然吃了咸鱼那就别
示波器auto与trig'd怎么切换
招商银行异地跨行转账手续费和时间
辰华CHI电化学工作站测EIS不准确么
表示很受伤的词语
杨帆的任职简历
没有蛋黄只有蛋清可以做什么菜.?
佳能lbp3500打印机提示e8050005亮警告灯
新款gmc房车教程视频播放
雪铁龙世嘉,标致408,北京现代明图1,8车型哪个
下面的图形是由边长为l的正方形按照某种规律
阅读《周庄水韵》选段,完成7—9题。我曾经三
珠海冬季最低温度是多少
手机群控和微信群控还有微连云控制有啥区分?
推荐资讯
竹屑炭主要用途是什么
高达00机体是真实系高达中最强的吗?处了超级
蒸碗是啥样的?想买个家里用,有图吗?
轿车的最大排量是多少?
0.04的最简分数
算八字2015年大雪算几月的
剑网三,小白求问,正邪不两立副本第二个boss
钢琴240块一堂课,是不是太贵了
头上缝针是不是越久拆就越不痛??
红玉兰树是怎么培育出来的
T+3 是什么意思?
D2222和G1337哪个路线长,都从杭州到重庆,一
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?