我想运行一个AHK可执行文件,然后让java等待该可执行文件在脚本结束时终止它自己的进程,然后继续,是否有一个功能来监控特定的exe是否正在运行?如果它在运行,要等到它停止呢?
例如在AHK中你可以这样做:
IfExist, Appname,
{
insert code
}
我会用AHK做这个项目,但因为AHK是如此脆弱的变量和递增,我不能让它工作,它的IF和Else语句正确
或者如果可能的话,如何让Java暂停一段时间
所有我真正寻找的是一个简单的代码位运行。exe和代码位等待它不存在
您需要阅读java.lang.ProcessBuilder
以启动exe文件,然后阅读java.lang.Process.waitFor()
以等待进程完成。如果您希望通过标准输入将数据提供给进程,或者读取标准输出或标准错误,那么您将有一个更复杂的任务,涉及线程来处理流,以便进程不会阻塞。
这就像一行代码一样简单:
Runtime.getRuntime().exec(<insert executable file here>).waitfor();
PS:它只是一行,所以我不介意,但这不是一个地方获得完整的工作代码从别人。通常的回应是"看这里,自己动手",除非OP发布的相关代码缺少一小部分,而这里的情况并非如此。PS2:请考虑接受Jim的答案,因为它是正确的。