如何覆盖其他 windows 应用程序的元素?

How to override other windows application's elements?

你能给我指出正确的方向吗?

我想以编程方式编辑其他应用程序文本框或单击。例如,在网站中,我可以编辑元素并调用按钮点击。

我不知道该怎么做,但我可以移动鼠标和使用键盘运行时间是否可以编辑其他应用程序的文本框?

我有 C++、VB.NET 和 C# 知识 - 有什么建议或示例代码吗?

谢谢。

没有简单的方法可以做到这一点,但这是可能的。您将深入了解 Win32 Api 以获得所需的内容。这将需要很多代码,太多了,无法在此处放入示例。

您需要先找到您想要的 window。这可以通过 FindWindowEx. When you have the window, you can enumerate the child controls using EnumChildWindows.

来完成

当您最终获得所需控件的句柄时,您可以连接到 windows 消息子系统并发送 WM_SETTEXT message using the SendMessage function. There is a wrapper function available: SetWindowText 但文档明确指出它不适用于 windows 其他应用程序。

准备好在 Win 中进行大量挖掘 Api。在较新的 windows OS 中,您可能 运行 会遇到有关安全性的问题。当您达到 运行 时,功能将在很大程度上取决于 OS、UAC 设置等

我记得在 15 年前的 Windows98 年做过一次,即使那时候还是有问题的!祝你好运!