When doing a little bit of work on a solution that contains a Visual Studio Addin the other day, I noticed that there’s a little bit of an issue with Visual Studio. If you create an addin project and you get the message:
An error occurred, and the wizard could not generate the project. Verify that the programming language is properly installed.
Then double check where you are creating your addin.
Read more
When using NUnit, sometimes you will want to access files in the test project. These might be xml files with data, assembly references or whatever. Now typically, NUnit will actually copy the files it thinks it needs into a temporary location. This causes the problem that you can then do things like use a relative path to get files in the project. You can use manifest resource streams but sometimes this just isn’t suitable.
Read more
I don’t know when I learnt that Windows + E opened up Windows Explorer. It must have been a while ago. But it’s imprinted in my muscle memory, the number of times I hit that combo every day is probably quite high. But how many other hotkeys do I use? Asides from a few other functional ones, like Win + D, I don’t use hotkeys so much. And I got to thinking, I’d love to open Google Chrome with a hotkey just like I do with explorer.
Read more
A while ago, I made an implementation of Solitaire and Spider Solitaire using WPF and my Apex MVVM library. I wrote about it on the CodeProject, in an article called Solitaire and Spider Solitaire for WPF (imaginative title indeed).
Anyway, just recently I got a very interesting message from rupam rupam, who has made an augmented reality version of the project! In his application, you use your webcam to play the game physically by picking up cards with gestures.
Read more
There have been some problems with the version of Switch uploaded to the Visual Studio Gallery. I’ve created a new version of Switch (1.4) and uploaded this - it works fine now, for Visual Studio 2008, 2010 and 2012.
You can find out more about this extension on the Switch Page.
Working on some addins lately has taught me a few really useful tricks about debugging in Visual Studio. I’ll update this post over time.
The Experimental Instance
Very useful to know - the experimental instance loads its extensions from a special folder, and debugging extensions drops them there. The location is:
%UserProfile%\AppData\Local\Microsoft\VisualStudio\10.0Exp\Extensions\
I have just added an article to the CodeProject that discusses how to create Info Tip shell extensions in .NET. These extensions are used by the shell to customise the tooltips shown over shell items.
The article shows how you can use SharpShell to very quickly create these extensions, you can find it at: http://www.codeproject.com/Articles/527058/NET-Shell-Extensions-Shell-Info-Tip-Handlers.
So just how easy does SharpShell make creating Shell Info Tip Handlers? The answer is pretty easy indeed.
Read more
SharpShell is a project that I have recently uploaded to CodePlex. This class library, and set of tools and samples, is designed to be a framework to enable rapid development of Shell Extensions using the .NET Framework. In time it may grow to contain some functionality for using Shell entities within managed applications (for example, allowing an Explorer context menu to be built dynamically for a given path).
Anyway, the code is all at sharpshell.
Read more
For those who are interested, I’m now starting development of SharpGL 2.1. SharpGL 2.1 will primarily be a release to implement features and fix bugs that users have added to the Codeplex site. The actual features and bugs that’ll be sorted are on the CodePlex site - just search for release ‘SharpGL 2.1’.
This will also be the first release of SharpGL that will be published on Nuget.
Recently I was working on a Visual Studio Extension for VS2010, instead of a single item in the the tools menu, what I wanted was a single item with a set of child items.
Strangely enough, documentation on this is quite lacking. So if you need to know how to do it, here's the gist. First, create a standard Visual Studio 2010 extension with the wizard, we'll have some code like the below to start off with, in the OnConnection function:
Read more