![Windows 服务器和 Mac 客户端出现“键不在键盘上”](https://linux22.com/image/1408045/Windows%20%E6%9C%8D%E5%8A%A1%E5%99%A8%E5%92%8C%20Mac%20%E5%AE%A2%E6%88%B7%E7%AB%AF%E5%87%BA%E7%8E%B0%E2%80%9C%E9%94%AE%E4%B8%8D%E5%9C%A8%E9%94%AE%E7%9B%98%E4%B8%8A%E2%80%9D.png)
我正在使用 synergy 将我的鼠标和键盘从 Windows 7 x64 服务器共享到 Mac OSX Mavericks 客户端。截至今日,两台机器均使用最新版本 (1.4.17)。
我可以正常连接,鼠标和数字键盘都可以使用。但是,按常规键(例如“A”键)没有任何反应。
在客户端上启用 DEBUG1 会在日志屏幕上显示以下信息。对于字母 A:
DEBUG1: recv key down id=0x00000061, mask=0x2000, button=0x001e
DEBUG1: mapKey 0061 (97) with mask 2000, start state: 0000
DEBUG1: key 0061 is not on keyboard
两台机器都设置为使用日语键盘。具体来说,我在两台机器上都使用 Google IME。但是,即使我在两台机器上都设置了 MS IME、Kotoeri 甚至 English US,也会出现此问题。
以前的解决方案是将 Kotoeri 首选项更改为使用非英语备用键盘。此设置已被删除,并且 Mavericks 上不存在此设置。
我以前也遇到过这个问题,并且看到过在两台电脑上随意摆弄键盘布局、重新启动、更改布局,甚至重新连接物理键盘最终解决了问题,但由于某些未知原因,它仍然处于解决状态......
直到大约一年后,我不得不安装一对新电脑,问题再次出现。这完全可以重现,但我没有明确的方法来解决这个问题。我目前正在经历它再次现在。
这个问题在其他网站上被多次提及,但还没有明确的解决方案。我相信遇到同样问题的其他用户已经以某种方式解决了这个问题,但不知道如何解决,所以他们没有写答案。
如果有人知道解决这个问题的确定性方法,请回答这个问题。
答案1
我又一次解决了这个问题,但我不确定这个解决方案是否可重现。我做了以下事情:
当 synergy 运行时(不确定是否相关),在 Mac OSX 客户端上,我设置了英语美国键盘源输入。然后我删除了所有其他源输入。
我重新启动了客户端。
当客户端恢复时,我启动了 synergy,键盘就可以正常工作了。然后我重新添加了 Google 日语 IME,并删除了美国英语源。
我重新启动了客户端。
现在,由于某种神奇的原因,协同作用与日本布局完美地配合。
在此期间,Windows 服务器始终协同运行。服务器端无需重新启动。
请注意,就 Mac OSX 而言,整个过程前后的设置完全相同。我无法理解为什么这能解决问题。
如果其他人遇到了这个问题,并且这些确切的步骤解决了这个问题,请在评论中写下来。