gpt4 book ai didi

java - 如何定位一个进程而不执行它?

转载 作者:行者123 更新时间:2023-11-30 07:36:26 25 4
gpt4 key购买 nike

我最近遇到了以下代码:

Process proc1 = Runtime.getRuntime().exec("C:\\Program Files (x86)\\...");

这很好用。然而,一个有趣的问题。这段代码实际上打开了指定进程的一个新实例并将其存储到对象中。如果该进程已在运行,则它不会将其作为目标并将其存储到对象中。我猜这就是 .exec() 函数调用正在执行的操作。如何定位已经 Activity 的进程并将其存储到我的 Process 对象而不打开新实例?

注意:我尝试了明显的答案,Process proc1 = new Process("name"); Eclipse 说 Process 无法实例化。我确实在 javadoc 中查找了 Runtime 类。据我所知,没有明显的方法可以实现我想要实现的目标。似乎是一个简单的问题,我确信以前曾被问过,但我在任何地方都找不到答案,这就是我在这里问的原因。我可能使用了错误的术语,这就是原因。

编辑:我使用的是 Windows 10

我的目标是将 Minecraft 游戏的进程附加到 Process 对象。然后,我想使用 robots.keyPress(KeyEvent.VK_W); 向前移动我的角色。我不能只打开进程minecraft,因为要做的就是打开启动器minecraft.exe,然后我就会进入“欢迎”屏幕。

最佳答案

正如您可以从 Process docs, 推测的那样当您从代码创建子进程时,会创建进程对象。您可以使用此对象来管理进程,但正在运行的其他进程由您的操作系统管理(或与它们有关联的进程)。您必须与操作系统交互才能对它们执行任何操作。

在 Windows 中查找和终止进程的示例可以在 this answer. 中找到。

关于java - 如何定位一个进程而不执行它?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35329930/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com