作者qrtt1 (有些事,有時候。。。)
看板java
標題Re: [J2SE] 如何開啟並間控外部process
時間Fri Feb 8 23:02:22 2013
嗯。我推文應該是寫錯了,改用回的好了 XD
※ 引述《ICBM ( .)》之銘言:
: 我手上有一支以C++使用mingw編成的command line模擬程式,他吃一個XML的input file。
: 現在我用java撰寫一隻前處理程式,作用是會把使用者的input存成xml檔案,並且
: 在使用者按下上面的"開始計算"的按鈕之後自動叫出該command line程式並開始計算。
: 此外,還要能盯住該command line視窗,如果使用者按下"停止計算"的按鈕,
: 則會把相對應的command line視窗殺掉。
要砍外部程式,ms 有 tool 可以用
http://technet.microsoft.com/en-us/sysinternals/bb896683.aspx
但是如果你有原始碼,看能不能試著改用比較溫和的停止方式吧。
例如去 watch 特定目錄是否有檔案 出現/消失 作為停止的訊號。
至於要列出你外部的 process,wmic 能列出更多訊息。
你可以在啟用 external app 加一些無關緊要的參數作為識別之用。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.43.112.243
推 ICBM:感謝回覆!新年快樂!!! 02/09 16:34
推 ICBM:不過,原PO的想法我有想過。我原本是想想看有沒有直接使用 02/09 16:40
→ ICBM:java內建API的作法,這樣看起來比較簡單、直接一些。 02/09 16:41
※ 編輯: qrtt1 來自: 114.25.242.243 (02/10 20:18)
java 直接控制 c/c++ 實作的方法是 JNI/JNA,但我不建議這麼做。
c/c++ 如果實作沒有到位而 crash,會因為它同屬於你的 jvm process。
它們是會一起死掉的.
※ 編輯: qrtt1 來自: 114.25.242.243 (02/10 20:21)
推 ICBM:thanks,我差一點就要用這個了。看起來用wmic是比較好的方法 02/11 22:20