我有一个在 windows mobile 6.1 设备上运行的 C# 程序。它需要将逗号分隔的列表打印为键盘事件,以便用户可以将它们转储到当时打开的任何程序中。但是, keybd_event 方法忽略了逗号,只是一个接一个地打印出数字。这是一个带有硬编码数字的示例:
byte[] bBuf = Encoding.ASCII.GetBytes("22108,");
for (int i = 0; i < bBuf.Length; i++)
{
System.Diagnostics.Debug.WriteLine("buffer: " + bBuf[i]);
keybd_event(bBuf[i], 0x00, keyFlag.KEYEVENTF_KEYDOWN, 0);
System.Threading.Thread.Sleep(2);
keybd_event(bBuf[i], 0x00, keyFlag.KEYEVENTF_KEYUP, 0);
System.Threading.Thread.Sleep(2);
}
这将打印出“22108”。
逗号字符有什么特别之处会导致它被忽略,如果是这样,我该如何解决这个问题?