When developing a C++ program using Visual Studio, you typically compile and run it from the Visual Studio IDE. By default, when you do this, the executable is run with the working directory being the directory containing the Visual C++ project (.vcxproj
). That is, this is the directory which acts as the current directory for your executable, when it run from within Visual Studio. Note that if you ran the executable from a commandline, then the working directory would be the directory containing the executable file.
This behavior can be irritating if you have some files that your program needs to read or write. It would be nice if the executable considered the directory it resides in as the working directory. Changing this is easy:
- Open Project > Properties > Configuration Properties > Debugging.
-
The Working Directory entry would be
$(ProjectDir)
by default. Change it to whatever you wish. If you want it to be the same directory as the place where the executable resides in, then change it to$(SolutionDir)$(Configuration)\
Tried with: Visual Studio 2012 and Windows 7 x64
Image may be NSFW.
Clik here to view.

Clik here to view.
