[爆卦]bat指令是什麼?優點缺點精華區懶人包

為什麼這篇bat指令鄉民發文收入到精華區:因為在bat指令這個討論話題中,有許多相關的文章在討論,這篇最有參考價值!作者donkeychen (Bad_To_The_Bone)看板C_and_CPP標題[問題] 請問...

bat指令 在 Mrs Co:Lam 凱林家生活 Instagram 的最佳解答

2021-08-17 01:50:15

Bat Bat 又有最新玩具開箱 🎬 到底Biopod 魔動獸球 #暴走獅 開箱有啲乜❓一齊睇睇 👀 雖然密封包裝,但係其實未開已經可以玩,按吓側邊嘅按鈕,魔獸對眼就識郁、識閃,仲會發出吼叫!所以Bat Bat 真係 #未開箱先興奮 😆 玩完一餐先打開個魔動獸球,原來裡面有多達25件零件,...


開發平台(Platform): (Ex: VC++, GCC, Linux, ...)
VC++

問題(Question):
想請問一下 假設我要寫一個WINDOWS程式
想將執行COMMAND的OUTPUT都收集起來
比方說
在CMD裡面跑 一個time.bat
============================================== time.bat開始
@set name0=%date:~0,4%
@set name1=%date:~2,2%
@set name2=%date:~5,2%
@set name3=%date:~8,2%

@set name4=%time:~0,2%
@if "%name4%" == " 1" (
set name4=01
)else if "%name4%" == " 2" (
set name4=02
)else if "%name4%" == " 3" (
set name4=03
)else if "%name4%" == " 4" (
set name4=04
)else if "%name4%" == " 5" (
set name4=05
)else if "%name4%" == " 6" (
set name4=06
)else if "%name4%" == " 7" (
set name4=07
)else if "%name4%" == " 8" (
set name4=08
)else if "%name4%" == " 9" (
set name4=09
)
@set name5=%time:~3,2%
@echo %name1%%name2%%name3%_%name4%%name5%
============================================== time.bat結束
執行會把現在的時間用我期待的格式顯示在cmd的螢幕上

目前想要讓這個字串放到windows 程式的RichEdit物件裡面
然後加加顏色之類的


原本的想法是 time.bat > xxx.txt
然後用ooo.exe程式的code去開xxx.txt
但是這樣沒辦法即時 而且多disk io

想把程式改成下面的方式
在cmd裡面執行ooo.exe time.bat
(叫ooo.exe 執行time.bat然後把time.bat的output都放到ooo.exe的介面上顯示)
或者是
在cmd裡面執行time.bat | ooo.exe
(把time.bat的結果輸出給ooo.exe 然後ooo.exe是一個視窗 一直跑thread接收)


請問一下這兩種方式的程式的實作分別是利用哪種原理
(因為不知道這到底是什麼 所以我不太知道往哪邊去google
想說有沒有人有概念提供一下關鍵字)
感謝

--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 211.72.248.50
donkeychen:time.bat可能改成系統指令 或者是其他程式 10/03 17:45
Schottky:http://goo.gl/dyOJFa 關鍵字應該是 pipe 10/03 17:49
Schottky:第二個方法是從 exe 的 stdin 讀進來 10/03 17:49
Schottky大抱歉我parent child都編譯起來 但是還是有點不懂他怎麼運作
donkeychen:感謝大大 我來看一看 10/03 18:07
purpose:http://codepad.org/cicGs6nJ 改成這樣 10/03 19:42
EdisonX:我比較想知道有沒有辦法在 EditBox 裡模擬 cmd.exe XD 10/03 21:29
azureblaze:直接用_popen()應該比較簡單 10/03 23:06
azureblaze:msdn.microsoft.com/zh-tw/library/96ayss4b.aspx 10/03 23:07
purpose:http://codepad.org/jY452foE 輸入用 WriteConsoleInput 10/04 00:49
purpose:再把真正的 cmd 視窗隱藏,就能簡單模擬。要完全同步像在 10/04 00:50
purpose:用真的 cmd 一樣,那就很費工了,看 conemu 原始碼就有 10/04 00:51
EdisonX:_popen 在視窗設計還是會跳出 console , 看來還是避不開 10/04 23:59
EdisonX:console 短暫的出現 ? 10/04 23:59
※ 編輯: donkeychen 來自: 211.72.248.50 (10/08 10:23)

你可能也想看看

搜尋相關網站