0

我说的是 Windows GUI 程序。假设程序窗口有一个对话框(或确认按钮)询问用户输入。如何使用我的程序(用 C#、Java 或 Python 编写)向该程序提供输入。或者说,一个程序窗口在它的一个面板中显示了一些图像。我怎样才能从其他(我的)程序中获取它。这是一种模仿(或程序间消息传递?)。有人告诉我它可以使用 spy++ 来完成。但是怎么做?你可以解释吗?写什么代码?间谍++怎么办?

4

3 回答 3

2

spy++ 正在监听所有 win32 消息。它对于调试应用程序非常有用,但我认为将其用作进程间通信机制并不是一个好主意。

您可以使用 win32 api 将输入发送到您的程序。例如,您可以使用SetWindowText函数修改编辑文本的内容。

您需要获取窗口的句柄。您可以使用 FindWindow 和 GetDlgItem 来获取它。

由于win32 python 扩展,它将适用于 c++ 和 python 。我不知道是否可以从java中使用win32 api。

于 2009-09-04T12:13:03.990 回答
1

要以编程方式生成按键,请参阅Python 中的按键,并搜索“generate”、“key”、“emulate”、“fake”。

要以编程方式捕获屏幕,请参阅捕获活动窗口的屏幕截图?,然后搜索“捕获”、“窗口”、“屏幕”等术语。

于 2009-09-04T12:09:23.650 回答
1

如果你想写win32代码来做,从这里开始:

http://msdn.microsoft.com/en-us/library/ms632589(VS.85).aspx

如果您只想尽可能轻松地挂钩 gui,请调查:

http://www.winbatch.com/

http://www.autoitscript.com/

http://www.autohotkey.com/

于 2009-09-04T12:33:02.097 回答