我需要檢查與可執行文件在同一目錄中的文件。File.Exists()是否總是在與可執行文件相同的目錄中搜索?
目前我使用此代碼 -
if (!File.Exists(versionFile))
{
File.Create(versionFile).Close();
}
而且在一個地方我用這:
string file =
Path.GetDirectoryName(System.Reflection.Assembly.GetEntryAssembly().Location)
+ "\\" + args.Executable;
if (File.Exists(file)) {
Process.Start(file);
Application.Exit();
}
兩者都做同樣的工作,但我不知道哪一個更堅固。我想不出任何一方都會失敗的情況,但同時我對這兩種方法都有一種腥意。
哪一個更強大或有其他更好的替代這個簡單的問題?
爲什麼不使用'Path.Combine(Application.StartupPath,versionFile);'? –
是的,但Application.StartupPath在類庫/控制檯應用程序中不可用。它需要System.Windows.Forms的引用 –
'winforms'標籤欺騙了我。 –