Environment::CurrentDirectory Property
Gets or sets the fully qualified path of the current working directory.
Assembly: mscorlib (in mscorlib.dll)
| 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.
// Change the directory to %WINDIR% Environment::CurrentDirectory = Environment::GetEnvironmentVariable( "windir" ); DirectoryInfo^ info = gcnew DirectoryInfo( "." ); System::Threading::Monitor::Enter( info ); try { Console::WriteLine( "Directory Info: {0}", info->FullName ); } finally { System::Threading::Monitor::Exit( info ); }
- 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
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.