作者cnoize (泥巴星球Server)
看板Array
标题Re: [情报] Array30Ex 1.7.6 is released
时间Tue Feb 17 01:21:52 2009
1.
cmd.exe 一直都不能用。
今天特地用力改 code 试了很多次。
发现要直接送讯息给 hwnd.
HWND hwnd = GetForegroundWindow();
我猜是 cmd.exe 没有 GUI Thread, 所以原本的 code
GetGUIThreadInfo() 抓到的是不存在的数值(gi.hwndFocus,
spy++ 查不到) 有可能会 crash。
先 GetClassName(hwnd, wszBuf, MAX_PATH);
抓到 ConsoleWindowClass 就是 cmd.exe,
或许有些学生作业用 sdk 写的 windows program
也没有 GUI Thread,所以也许有必要增加一种送字方式,
直接使用 hwnd。
2.
我从 linux cross compile
http://www.libsdl.org/extras/win32/cross/README.txt
http://www.libsdl.org/extras/win32/cross/old/\
mingw32-linux-x86-glibc-2.3.tar.gz
array.rc 的中文是错的, 变成 8-bit ascii 了, 原因不明,
将里面的字串改成 utf-8 也是错的。
3.
有时按键出字 "?" 的状况是:
3.1. 正常
Keyboard Layouts 是 0x00000404
中文 (繁体) - 美式键盘
CH
或 0x00000804
中文 (简体) - 美式键盘
CH
3.2. 错误 "?"
英文 (美国) - 美国
EN
或许加入程式码: LoadKeyboardLayout, ActivateKeyboardLayout
针对一些视窗做处理会更方便。
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 210.192.198.24
1F:→ seed2501:Console 在 v1.7.8 改好了,在送字的时候会判断 02/21 23:12
2F:→ seed2501:array.rc 我在 Makefile.gcc 里面设定 codepage=big5 02/21 23:53
3F:→ seed2501:看会不会有改善好了... 02/21 23:54