1. 程式人生 > >c#獲取可執行程式(exe)路徑問題

c#獲取可執行程式(exe)路徑問題

最近寫c#程式,單獨執行沒有問題。可以讀取程式目錄下的檔案,而且能寫同一目錄下的日誌文字檔案。但

用任務計劃(taks schedule)呼叫程式執行會出問題。不會寫日誌檔案。除錯很久,發現是程式獲取當前執行

目錄寫法有問題。System.Environment.CurrentDirectory;獲取當前路徑單獨執行沒有問題。放在任務計劃中,

獲取的卻是任務計劃的路徑C:\Windows\system32;可能和任務計劃的設計和執行原理有關。後來

改為獲取當前程序的完整路徑,包含檔名(程序名)才解決。尤其是釋出在伺服器上的程式。很難

除錯,出來問題,首先懷疑的就是分配給自己的使用者許可權問題。伺服器人員不懂程式,扯來扯去。很

麻煩。

 string currentpath = System.Reflection.Assembly.GetExecutingAssembly().Location;
            string[] name = currentpath.Split('\\');
            string path="";
            for (int i = 0; i < name.Length-1; i++)
            {
                path+=name[i]+@"\";
            }
            path = path + @"\log\test.txt";