作者jpyama (jpyama)
看板C_Sharp
標題[問題] 再請教一個呼叫EXE的問題
時間Thu May 21 16:23:44 2015
目前有兩個現成的檔案
第一個是exe檔
另一個是txt檔
當exe檔與txt同在一個資料夾時
此exe就能將txt檔中的文字列印出來
(發票機無法直接列印txt文件,必須透過exe檔才可列印)
原先的狀況是每一張新的發票都要手輸時間、金額、統一編號等資料
剛剛做了一個小程式可以把統編跟金額輸入在介面中,按下按鈕就能寫出新的txt檔
但是執行到呼叫exe的時候,會顯示txt檔不存在
(但是txt明明就存在,且點開txt檔案時,裡面的內容是更新過的)
ProcessStartInfo start = new
ProcessStartInfo(@"C:\Users\Administrator\Desktop\receipt\wp520.exe");
Process.Start(start);
上面是呼叫的語法
是不是因為新增呼叫的關係
使exe檔呼叫時的所在位置並不在實際的資料夾中
所以程式無法找到txt檔並列印它
想請教各位前輩該不新增直接呼叫呢?
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 27.105.30.210
※ 文章網址: https://www.ptt.cc/bbs/C_Sharp/M.1432196627.A.C5E.html
※ 編輯: jpyama (27.105.30.210), 05/21/2015 16:31:37
推 O187: 你的exe是不是寫成抓程式路徑,這樣該路徑就變成你將該exe帶 05/21 17:24
→ O187: 起來的程式路徑,所以把你的程式放同目錄下即可 05/21 17:24
→ jpyama: 請問O大的意思是我目前的路徑並非呼叫後的路徑嗎? 05/21 17:42
→ jpyama: 我不太了解C#預設的目錄位置在哪裡... 05/21 17:43
→ GoalBased: 所以你產生的exe有根txt放在一起嗎 = =? 05/21 18:44
推 Litfal: 你應該是用錯wp520的抓路徑方法了...『不』要用 05/22 03:33
→ Litfal: Environment.CurrentDirectory 或 05/22 03:34
→ Litfal: System.IO.Directory.GetCurrentDirectory() 改用 05/22 03:35
→ Litfal: System.AppDomain.CurrentDomain.BaseDirectory 05/22 03:35
→ TobyH4cker: 是啟動位置的問題 05/25 15:04