【发布时间】:2012-11-02 12:59:14
【问题描述】:
我在 C# .NET 中编写了一个全局键盘挂钩程序,它就像一个键盘记录,它将结果写入一个文件。但是我使用了另一个程序,它支持在同一台计算机上输入越南语-它还使用全局挂钩将设置的键盘修复为越南语字符-它会影响我的程序!
示例:当我在没有我的程序的情况下输入以下内容:“xin chao2, to6i la2 mot65 nguoi72 Viet65 Nam”时,它会在我输入每个字符后再次修复:xin chào, tôi là một người Việt Nam。
但是当我使用全局挂钩时,我会在文件中收到结果:
xin chao2[Back]
[Back]
[Packet]
[Packet]
[Escape]
toi6[Back]
[Back]
[Packet]
[Packet]
[Escape]
la2[Back]
[Packet]
[Escape]
nguoi7[Back]
[Back]
[Back]
[Packet]
[Packet]
[Packet]
[Escape]
2[Back]
[Back]
[Packet]
[Packet]
[Escape]
Viet6[Back]
[Back]
[Packet]
[Packet]
[Escape]
5[Back]
[Back]
[Packet]
[Packet]
[Escape]
Nam
那么,我该如何解决这个错误,排除程序支持类型越南语的影响而不删除或禁用它,或者接受它的影响但导致文件看起来像在没有我的程序时输入?
对不起,如果您对我的英语有任何不便!
【问题讨论】:
-
期待回答这个问题!好问题 +1
-
嗯,你看到这个其他程序生成击键来将重音放在字母上。您的键盘记录器也在记录这些内容。当然不容易修复。
标签: c# winapi hook keyboard-hook