PDA

Click to See Complete Forum and Search --> : Visual Studio with C#, different on Windows 7?


NickThissen
Nov 10th, 2009, 02:23 PM
Hey,

I have installed Visual Studio 2008 Professional on Windows 7 (beta) a while ago, and after going back to my XP (dual boot) for a while, I'm now back on 7.

I notice now that Visual Studio appears to behave a little differently as it does on XP (although I don't think that is part of the issue).

The difference is that in XP, I am sure my Visual Studio used a 'background compiler' (not sure how to call it) when I was working in C# projects. When I make a typo, it would highlight it as an error as soon as I moved to a different line.

Now however, on Windows 7, it doesn't do that anymore. It only lists the error after I try to build the solution. This is really annoying as I tend to make a lot of typos, and I am used to VB.NET where those errors are also instantly noticed. Now, when I try to debug, I will find myself fixing typos for 5 minutes first, because I simply missed them while typing.
It also does this the other way around: when I'm fixing typos, it still lists them as an error even though I already fixed it. I need to rebuild for it to 'catch up'. So it's very hard for me to see quickly which typo's I've fixed already and which I haven't. So that often takes a few builds before I get them all.

Another thing (nit-picking here) is the Output window. I've never even seen it on the XP installation of VS. But now when I build the solution, it comes up (only when working in a C# project, not in a VB project) and for some reason always on top of the Error List. It shows some compile information probably. I think this is really annoying as I like to watch the error list while building so I can quickly see if an error occured or not. Granted, whenever an error does occur, it seems that the Error List window gets 'priority' and jumps in front of the Output window, but the Output window is still behind it. I know, the Output window can tell me probably more about the compilation than the Error List window, but it's just what I'm used to and it's a little annoying now :)
I tried simply closing it, but it just re-opens when I build. I tried checking it in the View menu, but it seems it doesn't work as a checked item but simply opens the window. How do I get it to stop showing?


I was wondering perhaps this has to do with the very first setting you have to specify when you start Visual Studio for the first time? The one where you choose to be a Visual Basic developer, or C# developer, or web, or General developer. I can't remember which I've picked on both installs... Can I change that now?

Or if that's not it, perhaps I installed some add-on that does this? I am pretty sure I'm only using Coderush Express on XP, but not (yet) on Windows 7, but I think that is not the cause for the background compiling in C# in the XP install; I'm pretty sure it did that before installing that.


How do I 'enable' this on my Windows 7 install? I like to think of myself as finally getting more and more knowledgeable of the awesome features Visual Studio has to offer, but somehow I can't figure out why I'm getting different behavior on two installs here...
Thanks!

Nightwalker83
Nov 10th, 2009, 04:25 PM
I wouldn't think c# nor any other visual studios application would run much differently in Windows 7 than it does in Vista. Comparing Win 7 to XP though I am not sure. I noticed you mention the error highlight not happening in Win 7 as in did in XP maybe that was an effect of an xp update? As far as I know Win 7 doesn't have any available updates yet.

NickThissen
Nov 10th, 2009, 04:45 PM
Well I can't imagine the difference I'm seeing is actually due to the difference in operating systems. It was just something I mentioned to explain the fact that I have two installations of Visual Studio that I'm frequently using.

It must be some VS settings that differ between the XP and Win7 installations. I just can't figure out which...

chris128
Nov 10th, 2009, 04:58 PM
I tried to use C# 2008 Express a while ago on my Vista machine and had exactly the same issue (with the code not being checked until you attempted to build the solution). However I just assumed that this was a 'feature' of C# as it is marketed for more advanced users than VB so I never tried to find out how to make it work properly...

I wonder if it has anything to do with 64 bit vs 32 bit because I was using Vista x64 and I'm sure you would have been using XP x86 before when it did work, so are you using Windows 7 x64 or x86?

NickThissen
Nov 10th, 2009, 05:20 PM
Using 32-bit on both.

And I have heard too that C# did not have a background compiler (or is my issue not what a background compiler is for?). But I am sure that the C# on my XP install works much more like VB does, where it displays errors as soon as it finds them, and not only during compiling. Otherwise I wouldn't find it so odd now :p
Just to make sure I'll check that tomorrow when I might get back on the XP install.

NickThissen
Nov 10th, 2009, 05:27 PM
I decided to google using background compiler as keywords and got this:
http://ira.me.uk/2008/09/01/switch-offon-visual-studio-2008-background-compilation/

But the option is nowhere to be seen in my options screen. All the others are, but the one I need isn't :p

Now I started wondering... Perhaps I don't even have SP1 installed?! In the Help - About Microsoft Visual Studio box it says .NET Framework 3.5 SP1, but I think that only counts for the Framework and not Visual Studio... Perhaps that is why, lol.

I'll try installing SP1 in the morning, see what it tells me.

RhinoBull
Nov 10th, 2009, 07:30 PM
The difference is that in XP, I am sure my Visual Studio used a 'background compiler' (not sure how to call it) when I was working in C# projects. When I make a typo, it would highlight it as an error as soon as I moved to a different line.

Now however, on Windows 7, it doesn't do that anymore. It only lists the error after I try to build the solution. This is really annoying as I tend to make a lot of typos, and I am used to VB.NET where those errors are also instantly noticed. Now, when I try to debug, I will find myself fixing typos for 5 minutes first, because I simply missed them while typing.
It also does this the other way around: when I'm fixing typos, it still lists them as an error even though I already fixed it. I need to rebuild for it to 'catch up'. So it's very hard for me to see quickly which typo's I've fixed already and which I haven't. So that often takes a few builds before I get them all.


It works the same way in XP as well - those are your personal settings that you probably changed some time ago [and forgot all about them] but never did in Win7.
I don't exactly recall what those options are so try going through them one by one...

JuggaloBrotha
Nov 10th, 2009, 08:18 PM
Hey,

I have installed Visual Studio 2008 Professional on Windows 7 (beta) a while ago, and after going back to my XP (dual boot) for a while, I'm now back on 7.

I notice now that Visual Studio appears to behave a little differently as it does on XP (although I don't think that is part of the issue).

The difference is that in XP, I am sure my Visual Studio used a 'background compiler' (not sure how to call it) when I was working in C# projects. When I make a typo, it would highlight it as an error as soon as I moved to a different line.

Now however, on Windows 7, it doesn't do that anymore. It only lists the error after I try to build the solution. This is really annoying as I tend to make a lot of typos, and I am used to VB.NET where those errors are also instantly noticed. Now, when I try to debug, I will find myself fixing typos for 5 minutes first, because I simply missed them while typing.
It also does this the other way around: when I'm fixing typos, it still lists them as an error even though I already fixed it. I need to rebuild for it to 'catch up'. So it's very hard for me to see quickly which typo's I've fixed already and which I haven't. So that often takes a few builds before I get them all.

Another thing (nit-picking here) is the Output window. I've never even seen it on the XP installation of VS. But now when I build the solution, it comes up (only when working in a C# project, not in a VB project) and for some reason always on top of the Error List. It shows some compile information probably. I think this is really annoying as I like to watch the error list while building so I can quickly see if an error occured or not. Granted, whenever an error does occur, it seems that the Error List window gets 'priority' and jumps in front of the Output window, but the Output window is still behind it. I know, the Output window can tell me probably more about the compilation than the Error List window, but it's just what I'm used to and it's a little annoying now :)
I tried simply closing it, but it just re-opens when I build. I tried checking it in the View menu, but it seems it doesn't work as a checked item but simply opens the window. How do I get it to stop showing?


I was wondering perhaps this has to do with the very first setting you have to specify when you start Visual Studio for the first time? The one where you choose to be a Visual Basic developer, or C# developer, or web, or General developer. I can't remember which I've picked on both installs... Can I change that now?

Or if that's not it, perhaps I installed some add-on that does this? I am pretty sure I'm only using Coderush Express on XP, but not (yet) on Windows 7, but I think that is not the cause for the background compiling in C# in the XP install; I'm pretty sure it did that before installing that.


How do I 'enable' this on my Windows 7 install? I like to think of myself as finally getting more and more knowledgeable of the awesome features Visual Studio has to offer, but somehow I can't figure out why I'm getting different behavior on two installs here...
Thanks!C# hasn't done the background compiling that vb does in any version of c# for me. At my job I use c# in VS2005 and VS2008 on WinXP and vb does the background compiling for my typos but c# never has.

I haven't used c# in VS2010 Beta's yet to know if they've added background compiling to it yet.

NickThissen
Nov 11th, 2009, 03:34 AM
Judging from the link I posted previously, C# does have a background compiler in VS2008 SP1. Now I'm just doubting whether I've installed that yet or not, hehe. Probably not...

NickThissen
Nov 12th, 2009, 10:35 AM
Well, turns out I didn't have SP1 installed yet... That fixed it.

However, the Output window still pops up every time I build. How do I stop that? I don't need to see it automatically...

RhinoBull
Nov 12th, 2009, 12:15 PM
That could be under Options > Projects and Solutions > General > Show Output window when build starts
Make sure it's unchecked.

ckennedy79
Nov 12th, 2009, 12:51 PM
My advice is to double check through all of your settings. When I went from XP to Vista, there had been a few things I had configured on the previous installation that I forgot to set after the fresh install on the new machine. Mostly it had to do with automatic tab spacing, etc.