Visual Studio 2012 Update Guide
Version: 2 – March 4 2013
This page is meant to provide a one stop shop for the updates that are available for Visual Studio 2012. Included here will be only updates from Microsoft. Some maybe betas, CTPs etc. If you think I have missed any please contact me!
- Released: 26 November 2012
- About: http://blogs.msdn.com/b/somasegar/archive/2012/11/26/visual-studio-2012-update-1-now-available.aspx
- Type: Stand alone installer
- Download: http://www.microsoft.com/visualstudio/eng/downloads#d-visual-studio-2012-update
Visual Studio Update 2 CTP 4(
NEW/UPDATED!)
- Released: 4 March 2013
- About: http://blogs.msdn.com/b/bharry/archive/2013/03/04/ctp4-march-of-vs-tfs-2012-update-2-is-available.aspx
- Type: Stand alone installer
- Download: http://go.microsoft.com/fwlink/?LinkId=273878
- Released: 12 February 2013
- About: http://blogs.msdn.com/b/bharry/archive/2013/02/12/update-to-vs-git-tooling.aspx
- Type: Visual Studio Extension
- Download: http://visualstudiogallery.msdn.microsoft.com/abafc7d6-dcaa-40f4-8a5e-d6724bdb980c
- Released: 14 February 2013
- About: http://visualstudiogallery.msdn.microsoft.com/3a96a4dc-ba9c-4589-92c5-640e07332afd
- Type: Visual Studio Extension
- Download: http://visualstudiogallery.msdn.microsoft.com/3a96a4dc-ba9c-4589-92c5-640e07332afd
- Released: 16 Feb 2013
- About: http://nuget.org
- Type: Visual Studio Extension
- Download: http://visualstudiogallery.msdn.microsoft.com/27077b70-9dad-4c64-adcf-c7cf6bc9970c?SRC=Home
- Released: 18 February 2013
- About: http://vswebessentials.com/
- Type: Visual Studio Extension
- Download: http://visualstudiogallery.msdn.microsoft.com/07d54d12-7133-4e15-becb-6f451ea3bea6?SRC=Home
- Released: 14 February 2013
- About: http://www.asp.net/vnext/overview/fall-2012-update
- Type: Web Platform Installer
- Download: http://go.microsoft.com/fwlink/?LinkID=275131
Windows Azure SDK for .NET (VS 2012) 1.8.1 - February 2013
- Released: 18 February 2013
- About: http://www.windowsazure.com/en-us/develop/net/#
- Type: Web Platform Installer
- Download: http://www.microsoft.com/web/gallery/install.aspx?appid=VWDOrVs11AzurePack_1_8_1
Microsoft Office Developer Tools For Visual Studio (
NEW/UPDATED!)
- Released: 4 March 2013
- About: http://blogs.msdn.com/b/somasegar/archive/2013/03/04/now-available-office-developer-tools-for-visual-studio-2012.aspx
- Type: Web Platform Installer
- Download: http://aka.ms/OfficeDevToolsForVS2012
Workflow Manager Tools for Visual Studio 2012
- Released: 4 October 2012
- About: http://msdn.microsoft.com/library/jj193528
- Type: Web Platform Installer
- Download: http://www.microsoft.com/en-za/download/details.aspx?id=35375
- Released: 30 October 2012
- About: http://dev.windowsphone.com/en-us/downloadsdk
- Type: Stand alone installer
- Download: http://go.microsoft.com/fwlink/?LinkId=265772
SQL Server Data Tools for VS 2012 December Update
- Released: 10 December 2012
- About: http://msdn.microsoft.com/en-us/data/tools.aspx
- Type: Web Platform Installer
- Download: http://www.microsoft.com/web/gallery/install.aspx?appid=SSDTVS2012
WCF Data Services 5.0 for OData v3
- Released: 17 December 2012
- About: http://www.microsoft.com/en-us/download/details.aspx?id=29306
- Type: Stand alone installer
- Download: http://www.microsoft.com/en-us/download/details.aspx?id=29306
Want more extensions for Visual Studio? Check out the 31 extensions created by Microsoft for Visual Studio 2012 on the Visual Studio Gallery
Timeline (out of date)
Since I like to visualise these things here is a timeline of the updates:
Is the event log (fast) enough for me?
In a recent project I was required to come up with a suggestion for logging and while the existing view of using a text file is used by many popular applications and is well understood it felt like re-inventing the wheel.
In the past I have used the great libraries of Enterprise Library or Log4Net to ensure I didn’t need to re-invent the wheel but really only to ever write to a log file. I began to question should I use the Windows Event Log rather, since it offers a lot of other features, especially around the viewer.
The viewer can not only provide a simple view, but offers ordering, filtering, exporting, remote connections (you can open the event logs on other machines), monitoring (through tools like System Center Operations Manager) and forwarding.
The big question for me has always been, can it cope with the load I want to throw at it? So to test this I wrote a small application, which is available for you to grab or comment on at Bitbucket. The application spins up a few threads (on my machine 4 is the magic number – above that there is no major improvements) and just writes as much data as quickly as possible to an event log.
Every time I have run it I have managed to get close to 40 000 writes per second! Monitoring CPU at the time, it averages between 30% to 50%, so not minor load but considering how much is happening, understandable.
There isn’t much I have that needs that sort of speed, and if I do there is ETW, so help me chant DEATH TO THE TEXT FILE, LONG LIVE THE EVENT LOG!
Free one hour async training!
Join me on Feb 6th as I present a one hour session on the new async feature of .NET 4.5. You can expect the full run through of how to use it, limitations and pitfalls. Since many people aren’t able to move to .NET 4.5 yet, I will also be covering what you should be doing now to make sure that you can easily take advantage of it in the future.
Async allows you to write code that runs across multiple threads in intelligent ways without the pains commonly associated with it!
- Date: Feb 6th 2013
- Time: 9am to 10am (South African time - so GMT +2)
- Where: Available over YouTube
- Audience: Anyone with .NET experience
Thanks and I hope to see your (virtually) on the 6th! Please follow me on Twitter for updates and links for this session!
Dealing with off by x issues when using the TextBox
Introduction
One of the toughest problems I faced when I built Notepad Classic was an issue where many functions like Go To & Find were always off a few characters. After a bit of experimenting I noticed a pattern, it was off by the number of characters equal to the line number (0 based).
i.e.: no issues on the first line (line index 0); Off by one on the second line (line index 1); Off by two on the third line (line index 2); Off by three on the forth line etc…
Problem
It turned out that the way the string functions count a line break (i.e. \r\n) as two characters, and rightly so – it is two characters a \r & a \n. However the TextBox functions like Select treat \r\n as a single character because that is what is displayed visually – a line break is one character visually. So there is a difference between the two scenarios and thus the “off by one x line count” error I found.
Solution
The solution I used is to compensate for it by working out the number of lines to the point (i.e. count all the line breaks before the point) and adjusting the results (adding +1 for each \r\n) as needed.
Sample application to show this problem and the solution can be found at: https://bitbucket.org/rmaclean/off-by-one-x-sample-code
How to update git-tf?
I love Git – it lets me work the way I want and where ever I may be. I love TFS – it has everything companies need for development projects. This is why I love Git-tf, it gives me git but with all the professional tooling from TFS serious development needs. However I have found that upgrading Git-tf isn’t obvious and in fact you may get it wrong without knowing!
I was doing it wrong
Since it is just a file copy deploy (i.e. drop files in a folder), I had assumed that you could just do a file replace of those files when a new version – however I noticed recently the version numbers after an “upgrade” didn’t match up.
Solution
The solution is to delete all the files in the folder FIRST – then you copy the files into that folder. Once you do that it just works!
It is odd to me, but it works and that is what matters.
Special thanks to Richard Banks for pointing out this solution to me ![]()
MVP Award Time Again
January first - most people celebrate the ability of gravity working for another year and other physics related awesomeness at midnight however for 943 people they get a special celebration at about 5pm (SAST) when they are told they are MVPs.
For the forth time I have been honoured to be placed into that special group by being award a MVP for ALM.
Thank you to everyone who has been a part of helping me gain this award for the work I did in 2012!
NDepend + Windows Store apps = WINNING
I <3 NDepend, it is an amazingly powerful tool that is brutally honest & unforgiving, and the rewards it brings are massive. Building Windows Store apps without it has always worried me – how do I know if this is going right? Thankfully yesterday the NDepend team released 4.1 which includes support for Windows Store apps, which includes the ability to analyse the .winmd files too!
This not only means I have personal benefits, but it is a sign of something too. NDepend really is cutting edge, and so the sign that they professional tools are arriving for Windows Store apps really shows commitment from the community to the platform! This means it will get easier and better to develop Windows Store apps in the future!
You can download a trial of NDepend at http://www.ndepend.com/NDependDownload.aspx
Twitter Pro-trick: Refer to companies by stock codes
Twitter is filled with awesome little tricks, and I recently found a very cool one for referring to companies on Twitter. First though, lets see the existing two ways to refer to a company. First you can use the companies Twitter name for example:
I work for @bbdsoftware :)
— Robert MacLean (@rmaclean) November 29, 2012
Or your other option is to use a hashtag
So what is the new awesome trick? If the company has a stock ticker code, for example Microsoft has MSFT & Nokia has NOK then you can prefix that with $ on Twitter, i.e. $MSFT & $NOK.My mother is a happy #Bing user
— Robert MacLean (@rmaclean) November 29, 2012
I am hoping for a $NOK Lumia 920 phone :)
— Robert MacLean (@rmaclean) November 29, 2012
On the Twitter site you will note that $NOK is now a link to a search for all $NOK related items (it doesn't work on the embedded Tweet), which in many cases (like Nokia) can save you a little bit of text. For people monitoring companies social network this is also important as it is an another thing they need to monitor!
This feature is called a CTAG (maybe it isn’t - but that is the the source on the search).
Presenting on Windows 8 - Pro tip
This tip is aimed at presenting, but is just as useful to those who want to focus in Windows 8 without distractions!
Windows 8 is a great operating system to use, especially the background tasks system that ensures other applications are not destroying your CPU & memory. However, there is a downside to background tasks!
Previously, if I wanted to ensure no annoying Skype popups (during my talks for example) I just shutdown Skype and no popups could occur, but in Windows 8, since the application isn’t running, how do we stop the popups?
It is a simple solution, bring up the settings charm (see image on left) and in the bottom right hand corner is an option called Notifications. If you tap that, you will get options to block notifications for 1, 3 or 8 hours.
I am tending towards 3 hours for my 1 hour talks to allow for setup, clean-up etc.
Once you have disabled it, the icon will change to show you it is disabled! If you want them back, for example when you are finished, then you can tap the icon again to enable them!
What is great is that live tiles & the background tasks still occur, just no popups anymore.
Windows Store app Development Snack: File Type Association Icons
For more posts in this series, see the series index.
One of the declarations you can have with a Windows Store app is the file type association, which lets file types become associated with your application. This means you can customise the icon for the file type & if the user double clicks an associated file, it will launch the application.
One of the properties of declaration is the logo property which is the icon to use for the file type. Logo is optional and if you do not specify it, or you specify it incorrectly, it uses the applications small icon (i.e. the 30x30) one – which doesn’t look great.
The solution to this is to correctly specify the logo, but that isn’t as straight forward as it seems. Firstly you don’t just have a single image you need FOUR icons with different resolutions
- 16x16
- 32x32
- 48x48
- 256x256
Next you need to name them correctly, the format is <name>.targetsize-<resolution>.<extension>, so for example if we wanted to use MyLogo.png as the file name we would have:
- MyLogo.targetsize-16.png
- MyLogo.targetsize-32.png
- MyLogo.targetsize-48.png
- MyLogo.targetsize-256.png
Lastly is putting in the correct logo name in the manifest, since you have four icons what do you use? You use the name + extension components. Using the example about we would have MyLogo.png as the name & Windows 8 is smart enough to figure out the resolution, insert the target bit and get the right image for the right resolution!