赞 | 0 |
VIP | 0 |
好人卡 | 0 |
积分 | 1 |
经验 | 8217 |
最后登录 | 2024-9-14 |
在线时间 | 68 小时 |
Lv1.梦旅人
- 梦石
- 0
- 星屑
- 120
- 在线时间
- 68 小时
- 注册时间
- 2007-12-16
- 帖子
- 75
|
以下引用dna_7086于2008-9-3 13:18:31的发言:
以下引用灼眼的夏娜于2008-9-3 7:58:23的发言:
第一个关于窗口问题应该是没法解决的,一般游戏里的UI部分都是自己实现的。dx表面并不能完美显示windows gui。。
第二个读取文字 是编码问题吧。。= =
先谢谢 灼眼的夏娜 啦~~
不知道用unicode能不能解决中文的问题
毕竟GetWindowTextA是ascii的……
...
這個用個老東西應該就能解決了
EasyConv
這是擷取其中的一部分
用這就OK了
- #--------------------------------------------------------------------------
- # ● Text Conv
- #--------------------------------------------------------------------------
- def text_conv(text)
- m2w = Win32API.new('kernel32', 'MultiByteToWideChar', 'ilpipi', 'i')
- w2m = Win32API.new('kernel32', 'WideCharToMultiByte', 'ilpipipp', 'i')
- len = m2w.call(0, 0, text, -1, nil, 0)
- buf = "\0" * (len * 2)
- m2w.call(0, 0, text, -1, buf, buf.size / 2)
- len = w2m.call(65001, 0, buf, -1, nil, 0, nil, nil)
- ret = "\0" * len
- w2m.call(65001, 0, buf, -1, ret, ret.size, nil, nil)
- return ret
- end
复制代码
$KCODE 不建議修該
用 UTF-8 編碼比較好
$KCODE => 編碼
'u' => UTF-8 |
|