線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:2685
推到 Plurk!
推到 Facebook!

呼叫外部EXE檔如何讀取內容

答題得分者是:P.D.
etet1230
一般會員


發表:3
回覆:0
積分:0
註冊:2016-04-21

發送簡訊給我
#1 引用回覆 回覆 發表時間:2017-04-28 15:44:20 IP:118.163.xxx.xxx 未訂閱
各位大大好
小弟我用ShellExecute呼叫了一個外部的EXE檔執行
他的執行方式有點像CMD一樣
開啟後會是一個小黑窗
下指令按ENTER
他會開始執行
執行完後會出現 TEST OK 的字樣
然後程式就會自動關閉

請問我該如何攔截TEST OK這段訊息?
P.D.
版主


發表:603
回覆:4038
積分:3874
註冊:2006-10-31

發送簡訊給我
#2 引用回覆 回覆 發表時間:2017-06-05 09:11:18 IP:118.169.xxx.xxx 未訂閱
兩種方式

1. 這支exe如果是你自己撰寫, 則可以在結束前將訊息丟到一個外部檔(如資料庫, 文字檔...), 再由原程式去判斷外部檔內容來決定
2. 如果exe不是你的, 可以利用 win32 提供的功能, 起一個迴圈判斷 exe 在 process(工作管理員的處理程序)是否存在, 如果還在就跑迴圈, 如果已找不到, 代表這支exe已關閉, 就可以結束迴圈, 往下做
後者是我比較常用的方式
RootKit
資深會員


發表:16
回覆:358
積分:419
註冊:2008-01-02

發送簡訊給我
#3 引用回覆 回覆 發表時間:2017-06-17 15:12:25 IP:60.250.xxx.xxx 未訂閱
在 CreateProcess Console 定義輸出 Pipe 。搜一下 CreateNamedPipe API 一堆解答就不PO原始碼。
系統時間:2024-04-20 8:20:08
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!