【发布时间】:2015-02-08 20:17:00
【问题描述】:
你能指出我正确的方向吗?
我想以编程方式编辑其他应用程序文本框或单击。例如,在网站中,我可以编辑元素并调用按钮点击。
我不知道该怎么做,但是我可以移动鼠标并使用键盘运行时是否可以编辑其他应用程序的文本框?
我有 C++、VB.NET 和 C# 知识 - 有什么建议或示例代码吗?
谢谢。
【问题讨论】:
你能指出我正确的方向吗?
我想以编程方式编辑其他应用程序文本框或单击。例如,在网站中,我可以编辑元素并调用按钮点击。
我不知道该怎么做,但是我可以移动鼠标并使用键盘运行时是否可以编辑其他应用程序的文本框?
我有 C++、VB.NET 和 C# 知识 - 有什么建议或示例代码吗?
谢谢。
【问题讨论】:
没有简单的方法可以做到这一点,但这是可能的。您将深入了解 Win32 Api 以获得所需的内容。这将需要很多代码,这里的示例太多了。
您需要先找到您想要的窗口。这可以通过FindWindowEx 完成。拥有窗口后,您可以使用EnumChildWindows 枚举子控件。
当您最终获得所需控件的句柄时,您可以连接到 Windows 消息子系统并使用 SendMessage 函数发送 WM_SETTEXT 消息。有一个包装函数可用:SetWindowText,但文档明确指出它不适用于其他应用程序的窗口。
准备好在 Win Api 中进行大量挖掘。您可能会在较新的 Windows 操作系统中遇到有关安全性的问题。当你让它运行时,功能将很大程度上取决于操作系统、UAC 设置等。
我记得 15 年前在 Windows 98 中做过一次,即使在那时它还是有问题的!祝你好运!
【讨论】: