我有一个隐藏的窗口,我想发一个按键。我正在尝试实现的一个示例是一个应用程序,它将密钥F5发送到不是活动窗口的Web浏览器。当收到F5击键时,网络浏览器会知道刷新当前页面。
我还想将一组密钥发送到一个应用程序,例如按Ctrl + S。此用法的一个示例可以是定时自动保存功能,以与不具有自动保存的应用程序一起使用。这样我就不用记得每隔5分钟保存一次。
C#是我的技术,这听起来真实吗?
答案 0 :(得分:3)
这篇CodeProject文章介绍了如何将键击发送到外部应用程序(使用C#源代码)。
答案 1 :(得分:0)
您可以将WinApi用于此目的。 SendMessage
或PostMessage
方法将所需消息发送到您的应用程序。
这是SendMessage的C#定义
[DllImport("user32.dll")]
public static extern int SendMessage(
int hWnd, // handle to destination window
uint Msg, // message
long wParam, // first message parameter
long lParam // second message parameter
);
并定义要发送的消息,如:
public const uint %WM_MESSAGE_HERE% = %value%;
检查PInvoke - 包含.NET的WinApi方法定义的优秀资源
答案 2 :(得分:0)
应该可以这样做,查看www.pinvoke.net并搜索sendinput,该页面应该告诉您需要知道的一切,以及如何找到窗口(查找findwindow)