好的,所以我创build了一个非常简单的SendText函数
void SendText(string str) { for (std::string::iterator it = str.begin(); it != str.end(); ++it) { PostMessage(h,WM_KEYDOWN,VkKeyScan(*it),0); } return; }
问题很明显,但解决方法不是。 如果发送string
你好,世界!
什么是USB HID col参数
什么是连接到MS sql 2000/2005的正确的PHPconfiguration?
rc.exe不再在VS 2015命令提示符中find
停止完成后退出程序
然而,这个应用程序处理我的消息的方式,我不能简单地检查是否需要保持移位并发送VK_SHIFT消息。 基本上,应用程序不处理KEYDOWN和KEYUP消息,它只是将它们视为按键事件。
所以变成按下/释放按键/按下/释放按下/按下按下/释放。
目标:
以某种方式使用单个postmessage发送正确的转移或未转移的字符到应用程序。 或者也许可能是其他的想法,为什么keydown /键盘只是翻译为keypressed。 它必须能够在后台处理(阿拉不发送input)
在Windows上运行Heroku本地开发(PHP buildpack)
使用Java的卷影复制
如何在不丢失原始调用堆栈的情况下重新抛出exception?
deflate不工作在Windows 64 Apache – 加载mod_deflate,mod_filter,mod_header
应用程序exception问题
正如评论中提到的,你的项目可能不是Unicode。
把它从我的一个项目中取出,发送密钥现在应该可以工作。
永久链接
请注意,我遇到了发送字符串的问题 – 整个文本消息 – 因为窗口可能无法(能够)处理它们的速度与发送它们一样快。 键之间的小延迟可以解决这个问题。 在我的项目中,我有一个发送文本的线程,使用一个std ::队列 (互斥体…)来处理所有的文本。 因此,如果你有一个这样的线程,一个短暂的Sleep呼吁不会太错误。
你可以尝试不同的延迟,也总是取决于你的电脑。 较旧的操作系统或较旧的计算机可能较慢并且需要较高的延迟。 您可以添加检查的操作系统/规格,或用户定义文字的字符之间的延迟选项。
如果任何人有一个直接的解决方案发送转移到背景窗口,随时留下评论,我会编辑我的答案。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。