Click to Rate and Give Feedback
MSDN
MSDN Library
.NET Development
.NET Framework 4
Application Class
 StartupPath Property
Collapse All/Expand All Collapse All
.NET Framework Class Library
Application..::.StartupPath Property

Gets the path for the executable file that started the application, not including the executable name.

Namespace:  System.Windows.Forms
Assembly:  System.Windows.Forms (in System.Windows.Forms.dll)
Visual Basic
Public Shared ReadOnly Property StartupPath As String
C#
public static string StartupPath { get; }
Visual C++
public:
static property String^ StartupPath {
    String^ get ();
}
F#
static member StartupPath : string

Property Value

Type: System..::.String
The path for the executable file that started the application.
This path will be different depending on whether the Windows Forms application is deployed using ClickOnce. ClickOnce applications are stored in a per-user application cache in the C:\Documents and Settings\username directory. For more information, see Accessing Local and Remote Data in ClickOnce Applications.

The following code example gets this property and displays its value in a text box. The example requires that textBox1 has been placed on a form.

Visual Basic
 Private Sub PrintStartupPath()
    textBox1.Text = "The path for the executable file that " & _
       "started the application is: " & _
       Application.StartupPath
 End Sub

C#
private void PrintStartupPath() {
    textBox1.Text = "The path for the executable file that " +
       "started the application is: " +
       Application.StartupPath;
 }

Visual C++
private:
   void PrintStartupPath()
   {
      textBox1->Text = String::Concat( "The path for the executable file",
        " that started the application is: ", Application::StartupPath );
   }

.NET Framework

Supported in: 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
Tags What's this?: Add a tag
Community Content   What is Community Content?
Add new content RSS  Annotations
Use in Console Apps      Anyxil   |   Edit   |   Show History
If you already have a reference to System.Windows.Forms, you can call this from a Console app by:
System.Windows.Forms.Application.StartupPath

Otherwise, try:
System.Reflection.Assembly.GetExecutingAssembly().CodeBase

The latter may include the executable name (I'm not sure), if it does, you can strip that via
System.IO.Path.GetDirectoryName()
Tags What's this?: Add a tag
Flag as ContentBug
And how about console application?      42Ghz   |   Edit   |   Show History
And how to get it work for a console application?
Tags What's this?: Add a tag
Flag as ContentBug
Processing
© 2012 Microsoft. All rights reserved. Terms of Use | Trademarks | Privacy Statement
Page view tracker