C# Application.ExecutablePath on WPF Framework 3.5

12,131

Solution 1

There are several ways to get exe path. Try the next:

  • Application.StartupPath
  • Path.GetDirectoryName(Environment.GetCommandLineArgs()[0])
  • Path.GetDirectoryName(System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName)
  • Path.GetDirectoryName(Assembly.GetEntryAssembly().Location)
  • System.Reflection.Assembly.GetEntryAssembly().Location

Solution 2

Try this:

System.IO.Path.GetDirectoryName( 
  System.Reflection.Assembly.GetExecutingAssembly().GetName().CodeBase );

Solution 3

You can unpack a Uri like this:

string codeBase = Assembly.GetExecutingAssembly().CodeBase;
   UriBuilder uri = new UriBuilder(codeBase);
   string path = Uri.UnescapeDataString(uri.Path);
Share:
12,131
Fred Smith
Author by

Fred Smith

Updated on June 09, 2022

Comments

  • Fred Smith
    Fred Smith almost 2 years

    This line is fine in a WinForm Framework3.5 but not in a WPF Framework3.5.

    Path.GetDirectoryName(Application.ExecutablePath); 
    

    How can I get the exe path on a WPF app ?