[英]C# application doesn't create file if called from command prompt
我有一個簡單的C#控制台應用程序,它將一些信息寫入文本文件。 從桌面打開(通過單擊.exe文件),該應用程序可以正常運行。 但是,當我通過命令提示符打開應用程序時,控制台窗口將正常打開,但應用程序不會向文本文件中寫入任何內容(其他代碼功能在控制台窗口中正常運行)。
僅供參考,我需要通過命令提示符打開應用程序,因為稍后在exe應用程序將被放置在服務器上並從php腳本調用(使用exec或shell_exec)。
我認為這可能是寫權限問題,但是在任何時候都不會拋出錯誤,所以我不確定。 有什么想法嗎?
我的代碼:
static void Main(string[] args)
{
string arg="";
try
{
arg = args[0];
}
catch {
}
using (StreamWriter outputWriter = File.AppendText(@"C:\Archive\test.txt"))
{
outputWriter.WriteLine("arg="+arg);
}
Console.WriteLine("Test");
Console.ReadLine();
}
當您從命令行運行應用程序時,當前目錄取決於您在提示符下的位置。
運行.exe時,請確保從與要寫入的文件相同的目錄中運行它。
如果這樣可以解決問題,那么您需要編寫代碼來處理要寫入的文件不在當前目錄中的情況,也許可以通過代碼進行設置。
好吧,我不知道發生了什么,但是我現在正在通過命令提示符再次嘗試,並且代碼按預期工作。 可能是因為在清理代碼以將其發布到此處時,我刪除了任何隱藏的錯誤。 gh .. :-)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.