我正在做一个侧面项目,我希望你们中的一些人可以帮助我。假设我有一个在Windows中运行的现有可执行程序,并且它每小时都需要某种用户交互。交互过程需要键盘上某些键的敲击,鼠标点击以及与GUI的交互。
我可以用什么有用的API,功能或方法来完成这项任务?
我可以用C ++和Java编程。
答案 0 :(得分:1)
如果可执行程序是在Windows中本地编写的,例如c ++ / WinApi / MFC,那么您可以将SendMessage()用于要激活的控件。它模拟事件的触发
这是C ++代码:
#include <Windows.h>
int main(){
HWND MainWindowHandle = FindWindowEx(NULL, NULL, "Notepad","Untitled - Notepad");
HWND ButtonHandle = FindWindowEx(MainWindowHandle, NULL, "Button","OK");
SendMessage(ButtonHandle, BM_CLICK, 0, 0);
HWND TextBoxHandle = FindWindowEx(MainWindowHandle, NULL, "Edit",NULL);
SendMessage(TextBoxHandle, WM_SETTEXT, 0, (LPARAM)"hello");
return 0;
}
答案 1 :(得分:0)
这看起来像System Tray的一些弹出应用程序。也许有一个计时器,一个守护进程。
答案 2 :(得分:0)
检查Thrift,它用于两种语言之间的相互通信。