找回密码
 加入
搜索
查看: 1296|回复: 4

[AU3基础] IsHWnd为何不好用[已解决]

[复制链接]
发表于 2017-6-4 22:44:34 | 显示全部楼层 |阅读模式
本帖最后由 cashiba 于 2017-6-5 17:03 编辑

Local $hWnd = "0x00010014"
If IsHWnd($hWnd) Then
   MsgBox(0, "", "这是一个有效的句柄(HWND)")
Else
   MsgBox(0, "", "这不是有效的句柄(HWND)")
EndIf

0x00010014是Au3Info.exe探测到的窗口句柄数值
明明就是句柄值,结果判断为无效句柄
换成十进制 Local $hWnd = 65556 也不行
基础不好阿,糊涂了....
发表于 2017-6-5 08:41:11 | 显示全部楼层
回复 1# cashiba


    你上面的源码变量$hwnd是字符串.句柄不是这样定义的,只能是函数返回的结果

评分

参与人数 1金钱 +19 收起 理由
cashiba + 19

查看全部评分

发表于 2017-6-5 09:22:50 | 显示全部楼层
同楼上所说
IsHWnd( 变量 ) ;检查一个变量基本类型是否为窗口句柄或指针类型.
HWnd( 表达式 ) ;转换表达式为 HWND 句柄.

评分

参与人数 1金钱 +19 收起 理由
cashiba + 19

查看全部评分

 楼主| 发表于 2017-6-5 17:01:18 | 显示全部楼层
回复  cashiba
你上面的源码变量$hwnd是字符串.句柄不是这样定义的,只能是函数返回的结果
tubaba 发表于 2017-6-5 08:41

嗯,明白了,原来是白马非马的问题....,感谢!
 楼主| 发表于 2017-6-5 17:02:49 | 显示全部楼层
同楼上所说
IsHWnd( 变量 ) ;检查一个变量基本类型是否为窗口句柄或指针类型.
HWnd( 表达式 ) ;转换表达式 ...
1361739590 发表于 2017-6-5 09:22

非常感谢,按你说的修改如下就可以了
Local $hWnd = HWnd("0x00010014")

If IsHWnd($hWnd) Then
   MsgBox(0, "", "这是一个有效的句柄(HWND)")
Else
   MsgBox(0, "", "这不是有效的句柄(HWND)")
EndIf
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-3-29 02:28 , Processed in 0.083782 second(s), 24 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表