欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費電子書(shū)等14項超值服

開(kāi)通VIP
Java 執行批處理文件的解決方案

Java是種跨平臺的語(yǔ)言,我們經(jīng)常碰到需要通過(guò)Java調用windows下某些程序。有些第三方廠(chǎng)商如(ANT),也提供了調用windows下可執行程序的方法,但我們往往需要調用一些批處理命令。而Java卻不提供。這里,我采用一種變相的調用方法,使得Java能調用批處理命令。
  
  前期準備
  
  Quick Batch File (De)Compiler
  
  將任何BAT、CMD批處理腳本編譯為EXE文件。
  
  1、運行exe 文件
  
  Java JDK里已經(jīng)提供了調用的方法,不在累贅,代碼如下。
  
  
  try {
  String command = "notepad";
  Process child =
  Runtime.getRuntime().exec(command);
  } catch (IOException e)
  {
  
  }
  
  2、運行 bat(批處理) 文件
  
  Java對批處理文件還不支持。剛開(kāi)始一直在研究Java如何調用批處理文件,始終找不到解決方法。后來(lái)只好繞過(guò)批處理,考慮如何將批處理轉換為exe可執行文件。然后再通過(guò)Java調用可執行文件。
  
  在Google上搜索一下,找到Quick Batch File (De)Compiler,可以將任何BAT、CMD批處理腳本編譯為EXE文件。使用了一下,果然可以。
  
  Quick Batch File (De)Compiler使用非常簡(jiǎn)單:
  
  Quickbfc 文件名.bat 文件名.exe(將批處理命令編譯為可執行文件)
  
  quickbfd 文件名.exe 文件名.bat(將可執行文件反編譯為批處理命令)
  
  然后,我們再按第一種方法通過(guò)Java 調用,即可。


BeanSoft 的實(shí)踐備注:
因為我要實(shí)現調用其他目錄里面的 BAT 文件, 具體說(shuō)就是 Tomcat 的 startup.bat 文件, 目前可以證明的是如果程序啟動(dòng)目錄位于 Tomcat 的 bin 目錄下, 調用批處理文件沒(méi)有問(wèn)題, 而如果不在那個(gè)目錄來(lái)調用 startup.bat, 那么就算使用 Quick Batch File (De)Compiler 也不能正常運行 BAT, 原因就是當前路徑不對. OK, 問(wèn)題集中在如何設置當前路徑下了.
我們看看批處理環(huán)境的 start 的用法:

start /?
啟動(dòng)另一個(gè)窗口運行指定的程序或命令。

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

    "title"     在窗口標題欄中顯示的標題。
    path        起始目錄
    B           在不創(chuàng )建新窗口的情況下開(kāi)始應用程序。 除非
                啟動(dòng) ^C 處理,否則該應用程序會(huì )忽略 ^C 處理;
                 ^Break 是唯一可以中斷該應用程序的方式
    I           新環(huán)境是傳遞給 cmd.exe 的原始環(huán)境,
                而不是當前環(huán)境
    MIN         開(kāi)始時(shí)窗口最小化
    MAX         開(kāi)始時(shí)窗口最大化
    SEPARATE    在分開(kāi)的空間內開(kāi)始 16 位 Windows 程序
    SHARED      在分共享的空間內開(kāi)始 16 位 Windows 程序
    LOW         在 IDLE 優(yōu)先級類(lèi)別開(kāi)始應用程序
    NORMAL      在 NORMAL 優(yōu)先級類(lèi)別開(kāi)始應用程序
    HIGH        在 HIGH 優(yōu)先級類(lèi)別開(kāi)始應用程序
    REALTIME    在 REALTIME 優(yōu)先級類(lèi)別開(kāi)始應用程序
    ABOVENORMAL 在 ABOVENORMAL 優(yōu)先級類(lèi)別開(kāi)始應用程序
    BELOWNORMAL 在 BELOWNORMAL 優(yōu)先級類(lèi)別開(kāi)始應用程序
    WAIT        啟動(dòng)應用程序并等候它結束
    command/program
                如果是內部 cmd 命令或批文件,那么該命令處理器是
                用 /K 命令行開(kāi)關(guān)運行 cmd.exe 的。這表示該窗口在命令運行
                后仍然存在。

                如果不是內部 cmd 命令或批文件,則是一個(gè)程序,并
                作為窗口應用程序或控制臺應用程序運行。

    parameters  這些為傳送到命令/程序的參數


如果命令擴展名被啟用,通過(guò)命令行或 START 命令的外部命令
調用會(huì )如下改變:

將文件名作為命令鍵入,非可執行文件    可以通過(guò)文件關(guān)聯(lián)調用。
    (例如, WORD.DOC 會(huì )調用跟 .DOC 文件擴展名關(guān)聯(lián)的應用程序)。
    關(guān)于如何從命令腳本內部創(chuàng )建這些關(guān)聯(lián),請參閱 ASSOC 和
     FTYPE 命令。

執行的應用程序是 32-位 GUI 應用程序時(shí),CMD.EXE 不等應用
    程序終止就返回命令提示。如果在命令腳本內執行,該新行為
    則不會(huì )發(fā)生。

如果執行的命令行的第一個(gè)符號是不帶擴展名或路徑修飾符的
    字符串 "CMD","CMD" 會(huì )被COMSPEC 變量的數值所替換。這
    防止從當前目錄抓出 CMD.EXE。

如果執行的命令行的第一個(gè)符號沒(méi)有擴展名,CMD.EXE 會(huì )使用
    PATHEXT 環(huán)境變量的數值來(lái)決定要以什么順序尋找哪些擴展
    名。PATHEXT 變量的默認值是:

        .COM;.EXE;.BAT;.CMD

    請注意,該語(yǔ)法跟 PATH 變量的一樣,分號隔開(kāi)不同的元素。

查找可執行文件時(shí),如果沒(méi)有相配的擴展名,看一看該名稱(chēng)是否
與目錄名相配。如果確實(shí)如此,START 會(huì )在那個(gè)路徑上調用
Explorer。如果從命令行執行,則等同于對那個(gè)路徑作 CD /D。

可以看到 /Dpath 選項可以指定當前目錄下運行, 所以最后通過(guò)運行的命令語(yǔ)句就是:
cmd /c start /D"D:\Tomcat5.0\bin\" startup.bat, OK, 問(wèn)題成功解決.

代碼:

/*
 * @(#)TestRun.java 1.00 2005-7-21
 *
 * Copyright 2006  beansoft@126.com. All rights reserved.
 * PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
 
*/


/**
 * TestRun, 測試執行批處理文件.
 * 
@author  BeanSoft
 * 
@version  1.00 2005-7-21
 
*/

public   class  TestRun  {


    
public   static   void  main(String[] args)  {
        
try   {
            Runtime.getRuntime().exec(
" cmd /c start /D\ " D:\\Tomcat5. 0 \\bin\\\ "  startup.bat " );
        }
  catch  (Exception e)  {
            e.printStackTrace();
        }

    }

}
本站僅提供存儲服務(wù),所有內容均由用戶(hù)發(fā)布,如發(fā)現有害或侵權內容,請點(diǎn)擊舉報。
打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
猜你喜歡
類(lèi)似文章
(建議收藏)批量重命名文件教程
windows批處理(cmd/bat)編程詳解
Java如何調用可執行文件和批處理命令
批處理一閃即逝的幾種情況分析
40個(gè)windows批處理命令,掌握它們讓你在電腦上隨心所欲
文件名如何進(jìn)行批量更改?
更多類(lèi)似文章 >>
生活服務(wù)
分享 收藏 導長(cháng)圖 關(guān)注 下載文章
綁定賬號成功
后續可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服

欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久