java - 从 Java 以最小化状态启动应用程序

标签 java windows

这是我之前提出的一个后续问题:

start-program-if-not-already-running-in-java

我在那里没有找到很好的解决方案(因为似乎没有),但我有一个相关的问题:

有没有办法用 Java 代码启动应用程序(Windows 中的 .exe,而不是 Java 应用程序)并将其最小化?或者也许在开始后立即将其最小化?这将解决另一个问题的焦点问题,并且已经运行的问题或多或少会自行处理。

再次澄清问题:Java 客户端和 .exe 在 Windows 中运行,我真的没有能力编写任何包装器或使用 JNI mojo 或类似的东西。我或多或少需要一个纯 Java 解决方案。

再次感谢您的帮助,我非常愿意接受简单的回答:“这是不可能的。”

最佳答案

仅限 Windows:

public class StartWindowMinimized {

  public static void main(String[] args) throws IOException {
    if (args.length != 1) {
      System.err
          .println("Expected: one argument; the command to launch minimized");
    }
    String cmd = "cmd.exe /C START /MIN ";
    Runtime.getRuntime().exec(cmd + args[0]);
  }

}

示例用法:

java -cp . StartWindowMinimized notepad.exe
java -cp . StartWindowMinimized cmd.exe

要理解所涉及的论点:

cmd /?
START /?

关于java - 从 Java 以最小化状态启动应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/683427/

相关文章:

java - 如何将 PKCS12 证书导入 Java keystore ?

windows - 从证书和私钥将证书导入 Windows

windows - 从任务管理器生成时的进程转储类型

c++ - 在 Windows CE 中使用模态进度条对话框?

java - 如何使用 Java 下载文件的一部分?

java - 需要 Spring Boot CLIENT_PLUGIN_AUTH

windows - 仅在 Windows 上按住按钮的 Marble Trackman Scroll

windows - 在Windows上构建Hadoop:branch-1-win

Java - 如果我知道域,如何将相对 URL 字符串更改为绝对 URL?

java - 如何将点击播放/暂停添加到 VideoView?