`
hellsing42
  • 浏览: 261718 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

java执行外部程序时如何弹出相应的窗口(cmd窗口,管理器窗口)

阅读更多
使用cmd命令下的start命令
启动另一个窗口运行指定的程序或命令。

START ["title"] [/Dpath] [/I] [/MIN] [/MAX] [/SEPARATE | /SHARED]
      [/LOW | /NORMAL | /HIGH | /REALTIME | /ABOVENORMAL | /BELOWNORMAL]
      [/WAIT] [/B] [command/program]
      [parameters]

    "title"     在窗口标题栏中显示的标题。
    path        起始目录
    B           在不创建新窗口的情况下开始应用程序。 除非
                启动 ^C 处理,否则该应用程序会忽略 ^C 处理;
                 ^Break 是唯一可以中断该应用程序的方式
    I           新环境是传递给 cmd.exe 的原始环境,
                而不是当前环境
    MIN         开始时窗口最小化
    MAX         开始时窗口最大化
    SEPARATE    在分开的空间内开始 16 位 Windows 程序
    SHARED      在分共享的空间内开始 16 位 Windows 程序
    LOW         在 IDLE 优先级类别开始应用程序
    NORMAL      在 NORMAL 优先级类别开始应用程序
    HIGH        在 HIGH 优先级类别开始应用程序
    REALTIME    在 REALTIME 优先级类别开始应用程序
    ABOVENORMAL 在 ABOVENORMAL 优先级类别开始应用程序
    BELOWNORMAL 在 BELOWNORMAL 优先级类别开始应用程序
    WAIT        启动应用程序并等候它结束
    command/program
                如果是内部 cmd 命令或批文件,那么该命令处理器是
                用 /K 命令行开关运行 cmd.exe 的。这表示该窗口在命令运行
                后仍然存在。

                如果不是内部 cmd 命令或批文件,则是一个程序,并
                作为窗口应用程序或控制台应用程序运行。

    parameters  这些为传送到命令/程序的参数


如果命令扩展名被启用,通过命令行或 START 命令的外部命令
调用会如下改变:

将文件名作为命令键入,非可执行文件    可以通过文件关联调用。
    (例如, WORD.DOC 会调用跟 .DOC 文件扩展名关联的应用程序)。
    关于如何从命令脚本内部创建这些关联,请参阅 ASSOC 和
     FTYPE 命令。

执行的应用程序是 32-位 GUI 应用程序时,CMD.EXE 不等应用
    程序终止就返回命令提示。如果在命令脚本内执行,该新行为
    则不会发生。

如果执行的命令行的第一个符号是不带扩展名或路径修饰符的
    字符串 "CMD","CMD" 会被COMSPEC 变量的数值所替换。这
    防止从当前目录抓出 CMD.EXE。

如果执行的命令行的第一个符号没有扩展名,CMD.EXE 会使用
    PATHEXT 环境变量的数值来决定要以什么顺序寻找哪些扩展
    名。PATHEXT 变量的默认值是:

        .COM;.EXE;.BAT;.CMD

    请注意,该语法跟 PATH 变量的一样,分号隔开不同的元素。

查找可执行文件时,如果没有相配的扩展名,看一看该名称是否
与目录名相配。如果确实如此,START 会在那个路径上调用
Explorer。如果从命令行执行,则等同于对那个路径作 CD /D。

package test;

import java.io.File;
import java.io.IOException;

public class update {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
	//	String updateCmd="cmd /k copy D:\\app1.class D:\\work\\workspace\\UpdateModule\\doUpdate /y";
		//String startCmd="cmd /k java -cp D:\\test doUpdate.test";
		 String workDir=System.getProperty("user.dir");
		System.out.println(workDir);
		String startCmd="cmd /k start java -cp D:\\test doUpdate.test";

		Process p1=null;
		Process p2=null;
		try {
		//	p1 = Runtime.getRuntime().exec(updateCmd);
			p2=Runtime.getRuntime().exec(startCmd);
		} catch (IOException e) {
			// TODO 自动生成 catch 块
			e.printStackTrace();
		}

	}

}

分享到:
评论

相关推荐

    java 以管理员身份调用cmd 需要用到的文件

    如果仅需要打开一个CMD窗口而无需执行特定命令,`Desktop`类可能是更安全的选择。 总之,要以管理员身份在Java中调用CMD,可以通过`nircmd.exe`这样的辅助工具来实现,或者利用Java自身的API进行权限请求。理解这个...

    java中两种方式调用其他.exe可执行程序

    使用 Java 调用其他.exe 可执行程序时,需要注意以下几点: * 需要确保调用其他.exe 可执行程序的权限,避免出现权限不足的错误。 * 需要确保调用其他.exe 可执行程序的路径正确,避免出现文件不存在的错误。 * ...

    Java 执行Dos程序,结果显示到窗口

    本篇将详细介绍如何在Java中执行DOS程序并将结果输出到窗口,同时结合Eclipse和Maven项目环境进行实战演示。 一、Java执行DOS命令 1. 使用`Runtime.getRuntime().exec()`方法: 这是Java中执行外部命令最基础的...

    通过JAVA执行命令行程序

    在Java编程中,有时我们需要与操作系统进行交互,执行一些系统级别的任务,比如运行命令行程序。这通常是通过Java的Runtime类或ProcessBuilder类来实现的。本文将详细讲解如何通过Java执行命令行程序,以及在处理...

    通过Java运行一个外部程序

    在Java编程中,有时我们需要执行操作系统级别的任务,例如运行一个外部程序或命令。这可以通过Java的`Runtime`类提供的`exec()`方法实现。标题和描述中的示例代码演示了如何在Windows环境下启动一个名为`msimn.exe`...

    java 调用 windows cmd 命令

    这里的`cmd /c`是用来执行命令并关闭CMD窗口的。 2. **ProcessBuilder类**:这个类在Java 5中引入,提供了更强大的功能,如设置环境变量、控制工作目录等。使用ProcessBuilder的例子如下: ```java ...

    Windows系统中Java调用cmd命令及执行exe程序的方法

    要通过Java启动外部程序,还可以使用`Desktop`类(Java 6及以上版本),使用`getDesktop().open(new File(程序路径))`可以直接打开系统默认程序打开指定文件。 ### IOException类 在调用cmd命令或执行exe程序的...

    java中如何调cmd命令

    在Java编程中,经常需要与操作系统进行交互,比如执行系统命令、调用外部程序等。本文将详细介绍如何利用Java的`Runtime.getRuntime().exec()`方法来实现对CMD命令的调用,并通过具体的例子来帮助读者理解和掌握这一...

    java 调用doc命令

    这个方法允许Java程序在运行时执行外部程序或命令。例如,如果我们要在CMD中打开一个.doc文件,可以这样做: ```java String command = "wordpad.exe path_to_your_file.doc"; try { Process p = Runtime....

    JAVA执行DOS命令分析

    由于DOS窗口的标准输出缓冲区有限,如果输出过多,窗口不会自动关闭,导致Java程序在`waitfor()`时阻塞。解决这个问题的方法是使用`Process`类来捕获并处理子进程的标准输出。例如,你可以创建一个`BufferedReader`...

    运行bat时隐藏cmd窗口的方法(bat隐藏窗口 隐藏运行bat文件)

    有时,为了提高用户体验或避免用户看到不必要的命令行过程,我们可能需要在运行BAT文件时隐藏这个CMD窗口。这可以通过使用VBScript(Visual Basic Script)来实现。 首先,我们可以创建一个新的VBScript文件,例如`...

    Java模仿DOS界面(cmd程序) (Demo)

    在Java编程语言中,模拟DOS界面(也称为命令行接口或CMD程序)是一种常见的需求,特别是在进行系统级操作或者需要执行控制台命令时。这个Demo项目“Java模仿DOS界面(cmd程序)”旨在通过Java代码实现类似DOS窗口的...

    java调用windows命令

    在Java编程中,有时我们需要在程序中调用Windows系统的命令行操作,例如执行外部程序、系统命令或者进行文件操作。Java提供了Runtime类和Process类来实现这一功能。以下是如何使用Java调用Windows命令行的详细步骤和...

    Java调用系统执行程序(OS Command)

    在Java编程中,有时我们需要与操作系统进行交互,执行一些系统命令或者运行外部程序。这个过程通常被称为调用系统执行程序,或称为进程控制。在Java中,我们可以使用`Runtime`类或者`ProcessBuilder`类来实现这个...

    Java中使用Runtime和Process类运行外部程序.docx

    在Java编程中,有时我们需要在程序中调用操作系统级别的命令或者执行外部程序,这就涉及到Java中的`Runtime`和`Process`类。这两个类提供了一种机制,使得Java应用程序能够与操作系统进行交互,执行系统命令或者运行...

    java软件的安装和运行程序的方法

    Java 软件的安装和运行程序的方法 Java 软件的安装和运行程序的方法是 Java 开发者需要掌握的基本技能之一。这篇文章将指导您如何安装和运行 Java 软件,检查 JDK 是否安装成功,并使用 JCreator 和命令提示符编译...

    Java 执行本地脚本携带多参数

    - **错误流和输出流**:执行外部程序时,Java会创建一个子进程,该进程有自己的标准输出和错误流。如果不读取这些流,它们可能会阻塞程序,导致"进程已死锁"的情况。因此,你需要读取并处理`process.getErrorStream...

    Java零基础(JDK13) - 常用DOS命令 - 打开DOS窗口以及mkdir命令.md

    - 运行程序后,打开资源管理器或使用命令行界面,确认`new_folder`文件夹已成功创建。 - 可以尝试在不同的路径下运行此程序,通过修改`mkdir`命令中的路径参数来改变文件夹创建的位置。 #### 总结 通过以上步骤...

    解决java执行cmd命令调用ffmpeg报错Concat error - No such filter '[0,0]'问题

    在某些情况下,即使在DOS窗口中可以成功执行的命令,通过Java执行时也可能失败,这可能是因为Java对引号的处理方式与CMD不同。 尝试去掉内部的空格,如`-filter_complex '[0:0][1:0][2:0]concat=n=3:v=0:a=1[a]'`,...

    java 调用windows的一些可执行文件

    6. **安全注意事项**:调用外部程序时需谨慎,特别是处理用户输入时,避免命令注入攻击。不要直接拼接用户输入到命令字符串中,而是应该使用`ProcessBuilder`的`command(List)`方法,这样可以防止命令注入。 综上所...

Global site tag (gtag.js) - Google Analytics