如何使用批处理文件将值传递给非命令行可执行文件?

时间:2013-04-05 14:35:53

标签: batch-file

我有一个可执行文件,可以在GUI上的三个单独的行上接受类型化的用户输入。可执行文件还有一个名为“创建文件”的按钮,它将根据键入的数据执行文件创建。我的问题是如何自动将三种类型的值传递给可执行文件,然后从批处理文件中执行“创建文件”按钮?我无权访问源代码,因此我无法在那里进行修改以实现此目的。

3 个答案:

答案 0 :(得分:1)

(我还不能写评论,所以我必须使用“答案”)

我同意Cebence,据我所知你需要某种宏观播放器。我知道的最好免费是autohotkey(只是google for it)。它起初需要一点阅读,但它非常易于使用且功能多样。

答案 1 :(得分:0)

嗯,这不是一个真正的批处理文件解决方案 - 我认为不存在。但你可以使用像Spy ++这样的工具来查找相关对话框控件的ID,然后将程序写入:

  1. 启动可执行文件
  2. 检索主窗口句柄
  3. 发送相应的窗口消息
  4. 可能有软件可以做到这一点。也许有些东西你可以批量处理,只需要获取进程名称或ID并传递一条消息。

答案 2 :(得分:0)

如果GUI应用程序不支持命令行参数,那么BAT文件在这里没什么用处。

你真正需要的是某种“GUI宏播放器”应用程序,它将执行一个脚本,即像这样的宏:

  1. 将焦点切换到名为“XYZ”的正在运行的应用程序
  2. 找到名为“text1”的输入框并输入“$ {param1}”
  3. 找到名为“text2”的输入框并输入“$ {param2}”
  4. 找到名为“text3”的输入框并输入“$ {param3}”
  5. 找到名为“按钮”的按钮并单击它。
  6. 我不知道是否有(免费)应用程序现在可以执行此操作,但有一个名为“Act!”的免费应用程序。或类似的东西(它的图标是一个黄色的米老鼠手套,用手指按下按钮)。它实际上是一个包含正在运行的Windows可执行文件和Delphi应用程序源代码的ZIP文件,但我现在无法在PC Magazine的网站上找到它。

    希望这有帮助。