亚洲熟妇av乱码在线观看,亚洲色婷婷综合开心网,亚洲精品久久久久午夜aⅴ,亚洲精品一区二区三区蜜臀,亚洲精品国产综合久久久久紧

15年行業(yè)經(jīng)驗(yàn) 一站式解決方案 大型活動(dòng)策劃公司
免費(fèi)咨詢熱線: 4007181001

JAVA執(zhí)行批處理文件的解決方案

發(fā)布時(shí)間:2020-06-01 20:05   點(diǎn)擊量:

Java是一種跨平臺(tái)語(yǔ)言。我們經(jīng)常需要通過(guò)Java在windows下調(diào)用一些程序。一些第三方供應(yīng)商如(ANT)也提供了在windows下調(diào)用可執(zhí)行程序的方法,但是我們經(jīng)常需要調(diào)用一些批處理命令。Java沒(méi)有。在這里,我使用了一個(gè)偽裝的調(diào)用方法來(lái)使Java能夠調(diào)用批處理命令。

工具/原材料快速批處理文件(De)編譯器

步驟/方法1運(yùn)行exe文件。

Java JDK已經(jīng)提供了調(diào)用方法,這并不麻煩。代碼如下。

請(qǐng)嘗試{字符串命令= & quot記事本;進(jìn)程子級(jí)=運(yùn)行時(shí). getRuntime()。exec(命令);}捕捉(異常e){

}

2運(yùn)行蝙蝠文件。

Java還不支持批處理文件。起初,我一直在研究Java如何調(diào)用批處理文件,但我仍然找不到解決方案。后來(lái),我們不得不繞過(guò)批處理,考慮如何將批處理轉(zhuǎn)換成exe可執(zhí)行文件。然后通過(guò)Java調(diào)用可執(zhí)行文件。

搜索谷歌并找到快速批處理文件(De)編譯器,它可以將任何Bat和CMD批處理腳本編譯成EXE文件。使用一段時(shí)間后,它真的起作用了。

快速批處理文件(De)編譯器使用非常簡(jiǎn)單:

Quickbfc文件名。bat文件名。exe(將批處理命令編譯成可執(zhí)行文件)

Quickbfd文件名。exe文件名。bat(將可執(zhí)行文件反編譯成批處理命令)

然后,我們可以按照第一種方法通過(guò)Java調(diào)用。

因?yàn)槲蚁胝{(diào)用其他目錄中的bat文件,特別是Tomcat的startup.bat文件,目前可以證明的是,如果程序啟動(dòng)目錄位于Tomcat的bin目錄中,調(diào)用批處理文件沒(méi)有問(wèn)題,但是如果它不在那個(gè)目錄中調(diào)用startup.bat,那么即使您使用快速批處理文件(De)編譯器,您也不能正常運(yùn)行BAT,因?yàn)楫?dāng)前路徑不正確。好的,問(wèn)題集中在如何設(shè)置當(dāng)前路徑。讓我們看看批處理環(huán)境中start的用法:

開(kāi)始/?啟動(dòng)另一個(gè)窗口來(lái)運(yùn)行指定的程序或命令。

開(kāi)始[標(biāo)題] [/路徑][/我][/最小][/最大][/分離|/共享][/低|/正常|/高|/實(shí)時(shí)|/高于正常|/低于正常][/等待][/B][命令/程序][參數(shù)]

"標(biāo)題窗口標(biāo)題欄中顯示的標(biāo)題。路徑啟動(dòng)目錄B啟動(dòng)應(yīng)用程序,而不創(chuàng)建新窗口。除非開(kāi)始C處理,否則應(yīng)用程序?qū)⒑雎訡處理;如果新環(huán)境是傳遞給cmd.exe的原始環(huán)境,^Break是中斷應(yīng)用程序的唯一方法。代替當(dāng)前環(huán)境最小啟動(dòng)窗口最小化最大啟動(dòng)窗口最大化單獨(dú)啟動(dòng)16位窗口程序共享啟動(dòng)16位窗口程序低啟動(dòng)空閑優(yōu)先級(jí)類別正常啟動(dòng)應(yīng)用高啟動(dòng)應(yīng)用正常優(yōu)先級(jí)類別啟動(dòng)應(yīng)用高優(yōu)先級(jí)類別實(shí)時(shí)啟動(dòng)應(yīng)用實(shí)時(shí)優(yōu)先級(jí)類別高于正常啟動(dòng)應(yīng)用低于正常啟動(dòng)應(yīng)用低于正常啟動(dòng)應(yīng)用等待啟動(dòng)應(yīng)用并等待其結(jié)束命令/如果程序是內(nèi)部cmd命令或批處理文件,則命令處理器使用/K命令行開(kāi)關(guān)運(yùn)行cmd.exe。這意味著該窗口在命令運(yùn)行后仍然存在。

如果它不是內(nèi)部cmd命令或批處理文件,它就是一個(gè)程序,并作為窗口應(yīng)用程序或控制臺(tái)應(yīng)用程序運(yùn)行。

參數(shù)這些是傳遞給命令/程序的參數(shù)

如果啟用了命令擴(kuò)展,通過(guò)命令行或START命令進(jìn)行的外部命令調(diào)用將發(fā)生如下變化:

鍵入文件名作為命令,不可執(zhí)行文件可以通過(guò)文件關(guān)聯(lián)來(lái)調(diào)用。(例如,WORD。DOC調(diào)用與。文件擴(kuò)展名)。有關(guān)如何從命令腳本中創(chuàng)建這些關(guān)聯(lián),請(qǐng)參見(jiàn)ASSOC和FTYPE命令。

當(dāng)正在執(zhí)行的應(yīng)用程序是32位圖形用戶界面應(yīng)用程序時(shí),CMD.EXE會(huì)在應(yīng)用程序終止前返回一個(gè)命令提示符。如果在命令腳本中執(zhí)行,新行為將不會(huì)發(fā)生。

如果執(zhí)行的命令行的第一個(gè)符號(hào)是字符串“沒(méi)有擴(kuò)展名或路徑修飾符;CMD,& quotCMD將被COMSPEC變量的值替換。這可以防止從當(dāng)前目錄中捕獲CMD.EXE。

如果執(zhí)行的命令行的第一個(gè)符號(hào)沒(méi)有擴(kuò)展名,CMD.EXE使用PATHEXT環(huán)境變量的值來(lái)確定以何種順序查找哪個(gè)擴(kuò)展名。PATHEXT變量的默認(rèn)值是:

。通訊;。EXE。最佳可得技術(shù);。煤礦管理局

請(qǐng)注意,該語(yǔ)法與PATH變量相同,用分號(hào)分隔不同的元素。

在查找可執(zhí)行文件時(shí),如果沒(méi)有匹配的擴(kuò)展名,請(qǐng)查看該名稱是否與目錄名匹配。如果是,START將調(diào)用該路徑上的資源管理器。如果從命令行執(zhí)行,它相當(dāng)于該路徑上的光盤。

您可以看到/Dpath選項(xiàng)可以指定要運(yùn)行的當(dāng)前目錄,因此要運(yùn)行的最后一條命令語(yǔ)句是:cmd /c start /D"。D:\ Tomcat 5.0 \ bin \ & quot;蝙蝠,好了,問(wèn)題成功解決了。

代碼:

?123456789101112131415161718192021222324 & lt;/p>。& ltp align = & quot向左>。/* * @(#)TestRun . Java 1.002005-7-21 * * CopyRights 2006 BeanSoft @ 126 . com . Alllightsreservered . * PROPECTIVE/SECRETARITY . useissuebjecttolicenseterms . *//* * * * * *//* * * TestRun,測(cè)試執(zhí)行批處理文件。* @ author ibbean soft * @ version 1 . 002005-7-21 */public class testrun { public static void main(string[)參數(shù)){try {runtime.getruntime()。exec(“cmd/cstart/D。d:\ \假類別5。0\\bin\\\ "。startup .蝙蝠);} catch(Exception one){ e . PrintStackTrace();} } & lt/p>。& ltp align = & quot向左>。0

結(jié)束語(yǔ)80ticking.com搜索“JAVA執(zhí)行器文件”

相關(guān)推薦