设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 1928|回复: 6
打印 上一主题 下一主题

[已经解决] API查找窗口无效?

 关闭 [复制链接]

Lv5.捕梦者 (管理员)

老黄鸡

梦石
0
星屑
40703
在线时间
7542 小时
注册时间
2009-7-6
帖子
13506

开拓者贵宾

跳转到指定楼层
1
发表于 2011-1-22 12:50:25 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有帐号?注册会员

x
以下代码是小生尝试用于查找系统游戏“扫雷”窗口使用的代码,但不知道为何返回值一直是0?
于是请教各位大人指出我的错误……
  1. @FindWindow = Win32API.new("user32","FindWindowA",['L','P'],'L')
  2. isfind = @FindWindow.Call(0,"winmine")
  3. p isfind
复制代码

点评

API无能- -  发表于 2011-1-22 13:02
RGDirect - DirectX驱动的RGSS,点我了解.
RM全系列成套系统定制请联系QQ1213237796
不接受对其他插件维护的委托

Lv1.梦旅人

梦石
0
星屑
110
在线时间
953 小时
注册时间
2007-4-25
帖子
805
2
发表于 2011-1-22 13:21:52 | 只看该作者
FindWindow 的第二个参数应该是你要找的窗口的标题文字,大小写不敏感。你确定 winmine 是你要找的窗口的标题?

点评

英文版的 Windows 扫雷窗口标题应该是“Minesweeper” ~.~ 如果是中文的,那只能用宽字符版的 FindWindow 了,这意味着需要把 UTF-8 字符串转换为 UTF-16LE。  发表于 2011-1-22 13:40
也许LZ的是英文版的? =。= 不过换成“扫雷”二字,估计应该也不好使…… 个人对API也没啥研究……  发表于 2011-1-22 13:27
[email protected]:~> repeat 1 fortune
Matz is nice, so we are nice.
回复 支持 反对

使用道具 举报

Lv5.捕梦者 (管理员)

老黄鸡

梦石
0
星屑
40703
在线时间
7542 小时
注册时间
2009-7-6
帖子
13506

开拓者贵宾

3
 楼主| 发表于 2011-1-22 13:34:12 | 只看该作者
回复 苏小脉 的帖子

遍历所有窗口标题,原来扫雷的标题就是“扫雷”囧……
但是将isfind = @FindWindow.Call(0,"winmine")
改成isfind = @FindWindow.Call(0,"扫雷")
依旧无用.0.0

点评

啊咧0.0  发表于 2011-1-22 13:51
终于,还是没明白我的意思是要转码…… ToT  发表于 2011-1-22 13:46
见5楼,果然是编码问题T.T  发表于 2011-1-22 13:45
你这里是要获取窗口的句柄吧,但是目前对于窗口标题的处理显然是不对的……你可以去看看鼠标脚本里对于窗口标题的获取。  发表于 2011-1-22 13:43
啊咧?我这里本来就是获取啊,还咋获取0.0,难道是编码问题?  发表于 2011-1-22 13:37
RGDirect - DirectX驱动的RGSS,点我了解.
RM全系列成套系统定制请联系QQ1213237796
不接受对其他插件维护的委托
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
110
在线时间
953 小时
注册时间
2007-4-25
帖子
805
4
发表于 2011-1-22 13:40:57 | 只看该作者
回复 fux2 的帖子

英文版的 Windows 扫雷窗口标题应该是“Minesweeper” ~.~ 如果是中文的,那只能用宽字符版的 FindWindow 了,这意味着需要把 UTF-8 字符串转换为 UTF-16LE。

点评

………………囧,转换什么的最复杂了……  发表于 2011-1-22 13:42
[email protected]:~> repeat 1 fortune
Matz is nice, so we are nice.
回复 支持 反对

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
5 小时
注册时间
2011-1-12
帖子
6
5
发表于 2011-1-22 13:42:16 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
462 小时
注册时间
2007-7-30
帖子
643
6
发表于 2011-1-22 13:46:51 | 只看该作者
FindWindowW

点评

当然要转编码= =||  发表于 2011-1-22 14:08
果然还是不行哦DD大人  发表于 2011-1-22 13:53
直接findwindoww也可以吗?不需要转换编码?  发表于 2011-1-22 13:52
回复 支持 反对

使用道具 举报

头像被屏蔽

Lv1.梦旅人 (禁止发言)

梦石
0
星屑
50
在线时间
5 小时
注册时间
2011-1-12
帖子
6
7
发表于 2011-1-22 14:02:08 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2025-2-20 17:17

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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