Visual Studio 11 Installation
Very minimalistic, sleek installer window. Downloading and installing. VS11 is about 8GB so this takes a while. Okay, I lied. It takes forever
Reboot required half-way through.
Oh god we're going in. Final reboot required. Total time from download to installation: 4 hours, 30 minutes.
Enter: Visual Studio 11.
VS11 takes a moment to import my settings from VS2010. After this is finished, you're greeted with a screen not unlike VS2010's home page:
One difference you'll see is in the top right. The Quick Launch bar lets you search for commands contained within VS11. For example, typing 'new project' gives you the following results:
Let's see what else is new, starting from the New Project window.
Hmm...not really anything new. I don't see Metro style apps here. Not too sure why. Obviously I can't run them on this machine (W7), so that might have something to do with it? For now I'll create a C# Console Application using .NET 4.5. One new feature I noticed immediately is that, by default, the current line is highlighted. The Solution Explorer is now a bit more robust and features better navigation capabilities. Hovering over an item in the explorer gives the ability to view a concise summary of what that file contains. The Error List now has the ability to search for specific error messages as well as another filter option. VS11 shows fewer toolbar icons across the top by default, giving an increase in screen real-estate.
As a bonus, have a taste of the new async/await keywords.
The Windows Forms Editor is still pretty much the same so I won't cover that. The only real difference is that the Toolbox window now has a search bar as well (a great improvement - sometimes I'd scroll through the list 5 times before I found the control I was looking for).Let's transition and look at what VS11 means for C++.
Pretty much the same. The only new item here is Native Unit Test Project, which lets you hook your native code up to a managed unit test harness. Basically this means you can test your code to make sure it's working properly.
I'll create an empty project and add a main.cpp file to it. As you can see, there are HLSL files that you can add to your project now.
The new code editor has made some interesting changes. For starters, parameters are now italicized (this can be changed if you don't like it). I'm very disappointed that we still don't have built-in support for basic refactoring functions, like rename. You still have to rely on an addon like Visual Assist X to do that for you.
You can generate a graph of included files.
One thing that we have that was missing from VS2010 entirely was C++/CLI Intellisense. Never used C++/CLI? It's C++ for the .NET framework. Almost no one uses it *exclusively,* but instead it is most commonly used for bridging the gap between managed code (C#/VB.NET) and native code (C/C++/Pascal/what have you). Still, it exists and people use it. It's identical to the native C++ editor so I won't bother showing it here.
The F# editor has not changed a bit. No one here seems to be interested in F# so I'll skip it.
WPF hasn't changed much. I don't know a lot about WPF development so, once again, I'll skip it. Well, that, and VS11 crashed and burned when I created a WPF project.
Instead, I'm going to open up a Direct3D9 project I have sitting around: DCRAWL. Keep in mind that the original project is 2008 and I will be upgrading it two major versions 2008 -> 2010 -> 2011. I am greeted with a new upgrade window:
The conversion took place rather quickly. I noticed right away there was a new icon in the Solution Explorer that I hadn't seen before - 'fx' - a HLSL effect file.
When compiling for the first time, I got an error: error X3501: 'main': entrypoint not found. I went into the Project Properties and found there was a new section for HLSL Compiler. I changed the configuration to "Effect File (fx)" and was able to compile successfully.
In the Debug menu, there is a new subitem for Graphics. To enable GPU debugging, I had to go into Project Properties > Debug > Enable Graphics Capture. By default, it is turned off.
Unfortunately, I couldn't get it to work with my project. I'm not sure what the problem is, but when I start the application I get an error:
[pre]The program can't start because api-ms-win-core-registry-l1-1-0.dll is missing from your computer. Try reinstalling the program to fix this problem.[/pre]
So there's a quick look at VS11. I'll check more of it out tomorrow when I get some time (I only had about an hour to play with it today) and maybe post some more info.