Windows apps
Collapse the table of content
Expand the table of content
Information
The topic you requested is included in another documentation set. For convenience, it's displayed below. Choose Switch to see the topic in its original location.

Environment::CurrentDirectory Property

 

Gets or sets the fully qualified path of the current working directory.

Namespace:   System
Assembly:  mscorlib (in mscorlib.dll)

public:
property String^ CurrentDirectory {
	static String^ get();
	static void set(String^ value);
}

Property Value

Type: System::String^

A string containing a directory path.

Exception Condition
ArgumentException

Attempted to set to an empty string ("").

ArgumentNullException

Attempted to set to null.

IOException

An I/O error occurred.

DirectoryNotFoundException

Attempted to set a local path that cannot be found.

SecurityException

The caller does not have the appropriate permission.

By definition, if this process starts in the root directory of a local or network drive, the value of this property is the drive name followed by a trailing slash (for example, "C:\"). If this process starts in a subdirectory, the value of this property is the drive and subdirectory path, without a trailing slash (for example, "C:\mySubDirectory").

The following example demonstrates setting the CurrentDirectory property.

using namespace System;
using namespace System::IO;

void main()
{
      // Change the directory to %WINDIR%
      Environment::CurrentDirectory = Environment::GetEnvironmentVariable( "windir" );
      DirectoryInfo^ info = gcnew DirectoryInfo( "." );

      Console::WriteLine("Directory Info:   {0}", info->FullName);
}
// The example displays output like the following:
//        Directory Info:   C:\windows

SecurityPermission

for writing to files or directories in a set operation. Associated enumeration: SecurityPermissionFlag::UnmanagedCode

FileIOPermission

for access to the information in the path itself in a get operation. Associated enumeration: FileIOPermissionAccess::PathDiscovery

.NET Framework
Available since 1.1
Silverlight
Available since 2.0
Windows Phone Silverlight
Available since 7.0
Return to top
Show:
© 2017 Microsoft