在 C# 中模拟 X11 KeyPress

Simulate X11 KeyPress in C#

我正在使用 .NET 的 RemoteViewing VNC 服务器库来实现一些自定义 VNC 行为。 (在某些情况下发送自定义图像而不是桌面等...)

现在我正在添加键盘功能,库中有这个 keyChange 事件,它提供了键的 X11 KeySym 和一个指示它是否被按下的布尔值。所以我想在引发此事件时触发一个函数,将此密钥传递给本地计算机。然而,我很难找到一个解决方案来将这些 X11 keysym 转换成 Windows 可以理解的东西。

如果有人可以提供一些有关如何编写将这些 X11 keysyms 发送到 Windows 的逻辑的信息,我将不胜感激。

好的,如果我没理解错的话,您只是想将 X11 KeySymbols 转换为 windows 键码。我想你只需要创建一个字典,使用在 keysymdef.h 中找到的值作为键(你已经知道了 here for example) and as values the keycodes understood by SendKeys.

希望这能让你步入正轨。