1

我正在使用 PyWin32 的 win32process.CreateProcess 启动一个 GUI 程序,该程序具有我想在 Python 类中使用的功能。

我想用这个 GUI 从 Python 执行以下操作:

  • 将文本发送到 GUI 中的各个窗口(如果相信 WinSpy++,每次创建进程时似乎都会更改标识符),
  • 单击 GUI 上的按钮以配置和启动计算,以及
  • 从 GUI 检索计算输出(允许在 GUI 文本输出或保存文件输出)。

快速提问:我应该研究哪些 Python/PyWin32 功能来完成这些任务?我不是在寻找实际的代码,只是我应该研究的领域,以学习如何自己做这些事情。我已经浏览了大部分学习 Python、Python 编程和 Win32 上的 Python 编程,但如果它在那里,我不知道答案。

谢谢,

麦克风

4

1 回答 1

1

您想要做的事情很复杂,我不确定您是否可以使用 Python 来完成。我只能发布一些指针,但不能保证它是正确的方向。

至于将文本发送到单个窗口 - 有SendMessage功能 - 您可能需要将数据作为击键消息发送到所需的窗口。至于需要的hWnd参数SendMessage- 您应该能够通过调用EnumChildWindows函数或类似函数来获取它。

检索输出更加困难 - 我认为您需要将WndProc目标窗口替换为在打印时为您保存输出的窗口。您可以WndProcSetWindowLong代替(可能)。

应该是可能的,但我个人会做任何事情来避免编写类似的代码。

还有一件事——这不完全是与 python 相关的问题。尝试找到与 Win32API 类似的 C/C++ 代码,并尝试将其转换为 Python。在 SO 中搜索 WinAPI 资源。如果你足够绝望,那就是……

于 2010-08-02T12:07:08.547 回答