On some installations of Visual Studio 2010, 2012 or 2013 I’m confronted with strange behavior. One of these strange things are the black lines in the Watch Window of Visual Studio. Just like the screenshot below (this isn’t my screenshot, I’ve ‘borrowed’ it from someone else)

187351

Normally this has something to do with the graphics driver, but updating these drivers doesn’t work all the times. There’s also a work around for this problem, described on the MSDN forum.

The work around is:

  1. Go to Tools > Options >  Environment > Font and Colors
  2. Search for the settings for [Watch, Locals, and Autos Tool Windows]
  3. For Text select the Default for Item Foreground

The options will look something like the image below.

image

After you’ve set this option you’ll be able to see the text in your watch window again. The lines will be white again with black text.

The solutions in the project I’m working on are quite big and can easily take up 30 to 90 seconds to build, even though we have rather fast laptops. This is probably because of some build-plugins we are forced to use and the tight SharePoint integration of those plugins. Nevertheless, it’s quite annoying to see Visual Studio ‘hang’ every time you build your solution.

Last week I had some time on my hands to do some research on how we could improve these long builds. Turns out you can call MSBuild directly and let your solution compile outside of the Visual Studio instance. The build will still take up about the same amount of time, but it’s less annoying as you can still do some work in Visual Studio.

I’ve used Scott Hanselman’s blogpost to create some new External Tools in Visual Studio, placed them in my Menu and created keyboard shortcuts for them.

At the moment I’ve got 3 new items in my menu to build my complete solution, clean my complete solution and to build the project I’m currently working in.

clip_image001

The ‘Clean Solution’ button bound to the default out-of-the-box functionality, offered by Visual Studio.

The External Tool ‘Solution (MSBuild)’ is configured like so:

Title: MSBuild
Command: C:\Windows\Microsoft.NET\Framework\v3.5\MSBuild.exe
Arguments: $(SolutionFileName) /m:3 /p:BuildInParallel=true /v:m /p:WarningLevel=0 /p:Configuration=Debug
Initial directory: $(SolutionDir)

The ‘Current Project (MSBuild)’ is implemented like this:

De 'External tool' achter de optie Current Project (MSBuild)is als volgt:

Title: MSBuild Project
Command: C:\Windows\Microsoft.NET\Framework\v3.5\MSBuild.exe
Arguments: $(ProjectFileName) /v:m /p:WarningLevel=0 /p:Configuration=Debug
Initial directory: $(ProjectDir)

For both ‘tools’ I’ve set ‘Use Output Window’ to true.

What you are doing here is telling to do use 3 cores (/m:3), build the projects in parallel (/p:BuildInParallel=true (default)), use minimal logging (/v:m), ignore warnings (/p:WarningLevel=0) and use the debug configuration (/p:Configuration=Debug).

You can also add keyboard shortcuts to the options, this can be done in the screen below.

image

Disclaimer: copy-paste image of Scott Hanselman’s post

As Scott already mentions in his post, errors aren’t listed in the Error List of Visual Studio, but in the Output Window. If you’ve got a lot of errors, this can be quite annoying.

One other gotcha is the post-build step which is configured in some projects. We’ve got several projects which have post-build steps doing stuff, like aspnet_merge to merge all the usercontrols in the dll’s. This didn’t work anymore.

Apparently, this option, When the build updates the project output, doesn’t work properly with MSBuild:

image

You have to set it to On successful buildin order to run the post-build steps.

image

After having configured this, you are good to go and able to enjoy a responsive Visual Studio again. Also note, we are still working in Visual Studio 2008. It is said performance is a lot better in Visual Studio 2010 and Visual Studio 2012, but I haven’t used these products on this project yet, so I’m not sure about that.

There are also some other Visual Studio performance tuning tips, James Lewis has summed some of them up in a blogpost.

Onlangs ben ik weer begonnen met het studeren voor de nieuwe certificaten voor ASP.NET 4.0 en Sharepoint 2010. Hier zijn momenteel al enkele goede boeken die kunnen helpen met het leren van de materie, zoals:

Uiteraard zijn er nog wel veel meer boeken te vinden, maar deze vind ik zelf wel interessant.

Om m'n tablet toch weer eens goed te kunnen gebruiken, heb ik gekozen voor het pdf formaat van deze boeken. Het lezen gaat prima, echter is er 1 groot nadeel van de huidige pdf readers, namelijk dat je geen bookmarks (ezelsoren) kunt maken in een boek. Zo moet je dus zelf onthouden waar je in welk boek bent. Niet echt handig.

Gelukkig is er iemand zo goed geweest die zich hier ook aan ergerde en een mooie javascript plugin heeft geschreven voor Adobe PDF Reader. Het script is hier te vinden, inclusief de manier hoe het geinstalleerd dient te worden: http://www.aldenta.com/2006/09/15/plugin-bookmark-a-page-in-your-pdf/

Hopelijk wordt deze functionaliteit nu ook eens standaard geimplementeerd in de readers.

Met de invoering van Excel 2007 is er ook een ‘leuke’ feature ingeslopen, namelijk dat je meerdere bestanden in 1 workbook open hebt. Dit betekend dat alle bestanden in 1 scherm van Excel staan. Wel is er nog de optie om ze in de Taskbar als afzonderlijke sessie te laten zien, maar ze blijven in 1 venster zitten.

Persoonlijk vind ik dit behoorlijk vervelen, vooral wanneer je met 2 schermen werkt. Ik wil namelijk vaak 2 Excel bestanden naast elkaar hebben staan en deze een beetje kunnen schuiven en dergelijke. Uiteraard kun je Excel uitrekken en dan de verschillende bestanden naast elkaar zetten in het enorm uitgerekte workbook, maar dat vind ik niet echt handig.

Om toch 2 schermen (of meer) te krijgen van je Excel instanties moeten de volgende acties worden uitgevoerd.



Ga in de Windows Verkenner naar Tools --> Folder Options…

Klik op het tabblad File types en scroll naar het bestandstype XLS


Hier klik je op de knop Advanced, waardoor het volgende scherm tevoorschijn komt.


Selecteer de vetgedrukte optie Open en klik op de knop Edit… aan de rechterkant van dit venster.

Het volgende scherm verschijnt nu in beeld.


In dit scherm moeten enkele aanpassingen worden gemaakt.

De tekst in het veld Application used to perform action moet worden gewijzigd in:

"C:\\Program Files\\Microsoft Office\\Office12\\EXCEL.EXE" "%1"


De tekst bij het veld DDE Message en DDE Application Not Running moet worden leeg gemaakt, wanneer dat nog niet het geval is.

Het resultaat ziet er als volgt uit.


De wijzigingen kunnen nu worden opgeslagen. Dit kan door gewoon op de OK danwel Apply knoppen te drukken.

Wanneer je nu meerdere Excel bestanden opstart krijgen ze ieder hun eigen venster.

Zie alhier een resultaat.


Op deze manier kun je dus meerdere Excel bestanden openen die ieder hun eigen venster krijgen.