title: Best way to get application folder path
body: <p>I see that there are some ways to get the application folder path:</p>
  
  <ol>
  <li><code>Application.StartupPath</code></li>
  <li><code>System.IO.Path.GetDirectoryName(
  System.Reflection.Assembly.GetExecutingAssembly().Location)</code></li>
  <li><code>AppDomain.CurrentDomain.BaseDirectory</code></li>
  <li><code>System.IO.Directory.GetCurrentDirectory()</code></li>
  <li><code>Environment.CurrentDirectory</code></li>
  <li><code>System.IO.Path.GetDirectoryName(
  System.Reflection.Assembly.GetExecutingAssembly().GetName().CodeBase)</code></li>
  <li><code>System.IO.Path.GetDirectory(Application.ExecutablePath)</code></li>
  </ol>
  
  <p>What is the best way depending on the situation?</p>