滨滨:此代码肯定是有问题的.有没有发现在win2000下所有的机器执行结果都一样.就是那五个输入法?这是windows默认安装的.
事实上用户可能不需要其中的某种输入法而在输入法属性中将其删除了(实际上是屏蔽掉了),该程序无法判断出这一点,而且用输入法生成器生成的新输入法在该程序中也无法显示出来.一旦在该程序中选择了某一种已被删除的输入法,该输入法则被自动安装并激活了.
因此我认为preload子键下的输入法列表只是windows的默认安装的5种,每台机器都一样,只要你检测出是简体中文的windows2000,就没有必要去枚举了.
(发表于2003-4-16 10:21:00)
滨滨:查了一些资料,发现输入法的枚举应该通过API函数,主要是
user32.dll中的输入法函数和imm32.dll中的函数
(发表于2003-4-16 10:52:00)
lzbgt:好文章
(发表于2003-9-26 18:05:00)
winboy8119:真的是不错的文章,虽然我还是菜鸟,但是我也略知一二作者使用ime的绝妙之处,感谢作者,向你敬礼.
(发表于2004-5-17 0:14:00)
tbwises:改成这样:
枚举HKEY_CURRENT_USER\\KEYBOARD LAYOUT\\Preload就对了.
就是当前用户正在使用的几种输入法.
如果枚举不到就报错, 这样也不会安装没有使用的输入法了.
(发表于2005-4-30 19:49:00)
..........................................................................
--------------------next---------------------
阅读(359) | 评论(0) | 转发(0) |