从我的C#应用​​程序中单击另一个应用程序中的按钮?

ahm*_*ori 10 .net c# api

我想从我的C#应用​​程序中单击另一个应用程序中的按钮,
我没有包含该按钮的应用程序的源代码

让我们说一个例子......我可以通过单击其按钮从我的应用程序中使用Windows计算器编程
我使用的是c#和.NET
我想我必须使用windows api这样做吗
?有人有任何想法????

Ian*_*Ian 19

是的,这不是太复杂.您可以使用FindWindowEx获取窗口句柄,然后遍历windows元素并使用sendmessage或postmessage发送WM_Click消息.

这是一个完全符合您要求的codeproject项目.

代码项目

  • 我已经尝试了上面链接中的代码,但是它仅在Windows XP中有效,而在7或8中不起作用。计算器中的按钮不响应。任何想法如何解决? (2认同)
  • @KeithS:WPF 不使用本机 Windows 控件,而且从未使用过。您可能会将此与 WINdows 表单混淆。对于 WPF,确实没有任何可向其发送消息的“HWND”。这也是一件好事,因为它迫使开发人员重新考虑,并选择打算使用的工具:[UI 自动化](https://msdn.microsoft.com/en-us/library/ms747327.aspx )。哦,还有-1,仅是因为草率。Windows API 中没有“WM_Click”消息。 (2认同)