Wilson F
Wilson F

Reputation: 1260

Why would Browse Information in Visual Studio 2008 stop being updated?

I'm working on a fairly big (I think - is 32 projects big?) multi-project 'solution' in Visual Studio 2008. Because it's a legacy system, the code is mainly C <gasp!>, although I don't think that's germane to my question.

Recently (but I'm not sure how recently), I've noticed that my browse information - the VS facility that allows one to 'Go To Definition' and 'Go To Declaration' of a macro, function, variable, etc. - isn't being updated. I'll try 'Go To Definition' on something and either the IDE will tell me that "The symbol '' is not defined" or, if it's something that I've moved around, will go to the right file but in the wrong spot.

I tried building Browse Information for all the projects in the solution, but that didn't help. Then I read on MSDN that I should not be doing that, but should, instead, After all the projects are built, run BSCMAKE with all of the .sbr files as input. (I believe, but am not sure, that the .sbr files are made automatically when the files are compiled.)

I'm guessing that it's this step, (run BSCMAKE with all of the .sbr files) that is not happening, but I don't know where to find the setting, if there is one, that controls this for the entire solution (rather than one project at a time).

Is there some other file (than the .bsc) that VS gets this information from? (In other words, am I barking up the wrong tree entirely)?

Upvotes: 2

Views: 1475

Answers (2)

Saravanakumar SM
Saravanakumar SM

Reputation: 11

Since you migrated the project from VS2005 and the .ncb file contains information about various variables in project, I recommend you try to delete the .ncb file and then rebuild the project in VS2008 or VS2010.

After trying above, if not fixed, try this one also.

We can define function following formats.

Type:1

func(int i, char c)

{
.....
....
.....
}

Type:2

func(i, char c)

int i;

char c;

{
.....
....
.....
}

If you define like type 2, then press on a variable F12 key(Go to decelearation), it wont work. Please change as like type 1 and then try. It will work fine.

Upvotes: 1

C&#233;dric Guillemette
C&#233;dric Guillemette

Reputation: 2408

Have you tried deleting the IntelliSense file (.ncb) which is located right next to your solution file (.sln)? Because, the .ncb file can be corrupted. You can read more on the issue here

Most of the time, when you get "The symbol is not defined" its because the source file is missing an #include. Make sure it is present and that you can open it.

Also, defines and macros can get IntelliSense messed up. Any changes in your code recently?

There is no settings to activate BSCMAKE to my understanding. You need to call the command when you are done compiling.

Upvotes: 4

Related Questions