sivabudh
sivabudh

Reputation: 32645

Visual Studio: Where does it store "Set as startup project"?

Let's say a single solution (.sln) has 2 (.vcproj) named Proj1 and Proj2. By default, Visual Studio assigned Proj1 to be my startup project.

I set Proj2 to be my desired startup project.

Then I commit everything to my repository (excluding .suo).

I re-check out, and Proj1 is still the default startup project.

Does this mean Visual Studio store the startup information in the .suo file? But I dont want to commit that (?) since it's a user-specific file?

Or am I doing something wrong?

Note: I use Visual Studio 2008

Upvotes: 51

Views: 27930

Answers (5)

Matt Davis
Matt Davis

Reputation: 46044

As @Gishu and @misteraidan both said, Visual Studio uses the first project listed in the .sln file as the default startup project. If you have a primary project that should always be the default, just modify the solution in a text editor to list that project first in the list.

EDIT

Yes, it still works in Visual Studio 2019. By default, Visual Studio uses the first project listed in the solution file (.sln) as the default startup project. However, if you manually change the startup project inside Visual Studio, that setting appears to be stored in the .suo file located in the hidden .vs folder, and it overrides the sorted order in the .sln file.

However, if you close Visual Studio, delete the .vs folder, and then re-open the solution, whatever project is listed first in the .sln file regardless of project type will be used as the default startup project.

Upvotes: 20

Daniel Clarke
Daniel Clarke

Reputation: 11

The .SUO file may be hidden by default, to see it you may need to turn on "view hidden files" in Windows Explorer.

Upvotes: 0

Dr. Xray
Dr. Xray

Reputation: 928

Yes, it is .suo file, and yes it is a user-specific file: it is really what do you like to do for your current project debug. I think it is possible for different developer in the team who want to have different settings on this.

Upvotes: 0

Andy West
Andy West

Reputation: 12499

Yes, it is stored in the .suo file.

Here's a similar post explaining why.

Upvotes: 39

womp
womp

Reputation: 116977

Yes, it gets stored in the .SUO.

Although this can be an issue if you're often checking out branches or deleting your trunk workspace and checking it out again, it only takes a second to set it, so hopefully it's not too big an issue. You should definitely keep the .suo files out of the repository if you can.

Upvotes: 5

Related Questions