推 kenduest: 你用錯函數了,要能夠 io 重導這類,若你呼叫是現成外部 09/08 19:46
→ kenduest: 程式可以用 < 導入內容,請用 popen() 來處理 09/08 19:47
推 bitlife: 你的child process(pid==0那個)要先open 123.dat,然後把 09/08 20:42
→ bitlife: open 123.dat所得的file descriptor(簡稱fd)dup到fd 0去 09/08 20:43
→ bitlife: 再execlp,這樣被執行的process的stdin就會是123.dat 09/08 20:44
→ bitlife: dup的方法可以man dup2 09/08 20:45
→ bu884: com/bvgtn72.jpg 09/09 11:46
→ bitlife: 你一次用兩個方法,你那個 execlp 的 < 和 123.dat 拿掉, 09/09 12:07
→ bitlife: 和 open+dup2拿掉, 照道理 <和123.dat應該是無效的參數, 09/09 12:08
→ bitlife: 因為那兩個是shell在解譯並執行效果替wine64輸入導向,由 09/09 12:08
→ bitlife: execlp丟出就變成wine64再轉丟給你的執行檔的文字參數 09/09 12:09
→ bitlife: 和 open+dup2拿掉各試一次看看 09/09 12:09