Yanıtlar:
Bir yöntem:
System.AppDomain.CurrentDomain.BaseDirectory
Bunu yapmanın başka bir yolu:
System.IO.Path.GetDirectoryName(System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName)
İşte bir başkası:
System.Reflection.Assembly.GetExecutingAssembly().Location
Komut satırı bağımsız değişkenlerinin ilk bağımsız değişkenini de kullanabilirsiniz:
String exePath = System.Environment.GetCommandLineArgs()[0]
Basitçe string baseDir = Environment.CurrentDirectory;ve işini benim için kullandım.
İyi şanslar
Düzenle:
Ben bu tür bir hata silmek için kullanılan ama ben bu cevap eksi noktası insanların yanlış yolu hakkında bilmek yardımcı düşünüyorum çünkü ben bunu düzenlemek için tercih. :) Yukarıdaki çözüm yararlı olmadığını anladım ve onu almak için string appBaseDir = System.AppDomain.CurrentDomain.BaseDirectory;
Diğer yolları olarak değiştirdim :
1. string baseDir =
System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().Location);
2. String exePath = System.Environment.GetCommandLineArgs()[0];
3. string appBaseDir = System.IO.Path.GetDirectoryName
(System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName);
İyi şanslar
String exePath = System.Reflection.Assembly.GetExecutingAssembly().GetModules()[0].FullyQualifiedName;
string dir = Path.GetDirectoryName(exePath);
Bunu dene!