Project and Solution Files


The new home for Visual Studio documentation is Visual Studio 2017 Documentation on

The latest version of this topic can be found at Project and Solution Files.

The following files are created when you create a project in Visual Studio. They are used to manage project files in the solution.

FilenameDirectory locationSolution Explorer locationDescription
Solname.slnProjnameNot displayed in Solution ExplorerThe solution file. It organizes all elements of a project or multiple projects into one solution.
Projname.suoProjnameNot displayed in Solution ExplorerThe solution options file. It stores your customizations for the solution so that every time you open a project or file in the solution, it has the appearance and behavior you want.
Projname.vcxprojProjnameNot displayed in Solution ExplorerThe project file. It stores information specific to each project. (In earlier versions, this file was named Projname.vcproj or Projname.dsp.) For an example of a Visual C++ project file, see Project Files.
Projname.vcxitemsProjnameNot displayed in Solution ExplorerThe Shared Items project file. This project isn't built. Instead, the project can be referenced by another C++ project, and its files will become part of the referencing project's build process. This can be used to share common code with cross-platform C++ projects.
Projname.sdfProjnameNot displayed in Solution ExplorerThe browsing database file. It supports browsing and navigation features such as Goto Definition, Find All References, and Class View. It is generated by parsing the header files.
Projname.vcxproj.filtersProjnameNot displayed in Solution ExplorerThe filters file. It specifies where to put a file that is added to the solution. For example, a .h file is put in the Header Files node.
Projname.vcxproj.userProjnameNot displayed in Solution ExplorerThe migration user file. After a project is migrated from Visual Studio 2008, this file contains information that was converted from any .vsprops file.
Projname.idlProjnameSource(Project-specific) Contains the Interface Description Language (IDL) source code for a control type library. This file is used by Visual C++ to generate a type library. The generated library exposes the interface of the control to other Automation clients. For more information, see Interface Definition (IDL) File in the Windows SDK.
Readme.txtProjnameProjectThe read me file. It is generated by the application wizard and describes the files in a project.

File Types Created for Visual C++ Projects