Re: [問題] WebAPI 呼叫 Bat檔

看板C_Sharp (C#)作者 (什麼東西什麼東西)時間7年前 (2018/06/13 19:32), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串3/3 (看更多)
感謝有大大寄站內信來一起討論這個問題 今天改寫成PS呼叫 後來我直接把Code 搬到測試環境用本機呼叫IIS Express 的方式跑 發現一切在Visual Studio下都可以過 另外開的CONSOLE 也可以呼叫起來 但是丟到IIS 上面跑就不會過了 目前想到可能是下面兩個 1. 權限問題(但是可以順利的印出DIR,代表可以叫PS 去作事) 2. 32/64位元問題(但是PS 叫的起來應該就沒這問題) 暫時沒更進一步的想法 但是VS 會過應該就是流程沒問題…吧 己經把 application pool 的權限加到要呼叫bat 檔的資料夾裡 ※ 引述《OpenGoodHate (什麼東西什麼東西)》之銘言: : 手機好像無法回推文@@ : 這幾天想辦法單步執行 : 把外部呼叫exe檔的部份卡掉就可以過了 : 所以就想說寫一支 call exe 的bat 檔 : 給api呼叫 : 結果模擬失敗 : 我寫的程式竟然會很順利的跑完 : 看來只能想辦法追一下原始碼 : 那支bat 跟exe 都還滿復雜的 : 目前除了追原始碼想不到什麼好方法XD : ※ 引述《OpenGoodHate (什麼東西什麼東西)》之銘言: : : 如題 : : 原本有一支程式是bat檔寫的 : : 現在的操作方法是用復製的把呼叫檔跟參數 : : 貼在命令列 : : 現在的需求是要開個串口給外部呼叫 : : 所以自然就想到用WebAPI來接受參數 : : 再組出原本在命令列的字串貼上去跑 : : 但是用 : : System.Diagnostics.Process.Start : : 呼叫cmd.exe之後一直都卡住 : : 我就去看了bat原始的寫法 : : 發現bat 的中間有再去呼叫另一支exe程式 : : 只要呼叫到這支EXE就會卡住 : : 原始動作用手貼上的時後 : : 跑到這支程式,會再彈一個新的命令列視窗 : : 做完就關掉 : : 我猜是因為這樣卡死 : : 因為程式很簡單就 : : Process.Start 呼叫cmd.exe : : 再把參數丟進去 : : 丟個DIR或是PING 都可以正常執行 : : 這樣看來就是卡死了 : : 有什麼方法可以解Bat 包exe的呼叫嗎 : : 目前google 都只有用Process的做法 : : 有人試過其它做法嗎 : : ----- : : Sent from JPTT on my HTC_U-1u. : ----- : Sent from JPTT on my HTC_U-1u. -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 163.21.245.231 ※ 文章網址: https://www.ptt.cc/bbs/C_Sharp/M.1528889574.A.424.html
文章代碼(AID): #1R8G3cGa (C_Sharp)
討論串 (同標題文章)
文章代碼(AID): #1R8G3cGa (C_Sharp)