Posts Tagged ‘How-to’

Developing an add-in for Vail

May 5, 2010

Vail (Windows Home Server version 2) can be extended with add-ins, just like with version 1. (see for lots of add-ins)
Or have a look at my add-ins AutoExit & AdminiMe.

Microsoft has made available the SDK to start developing the add-ins for Vail.
The downside is…that version-1 add-ins are NOT compatible with version 2! There is a whole new API to learn and your add-in needs to be converted.

I prepared a document to guide you along the way of creating your first ever Vail add-in.

But be warned:
– It is still very basic, just plain and simple.
– It is not fit for any production system.
– It’s only inteded for developers that want to have a try at starting to create an add-in. Nothing fancy yet.
– The installation mechanism isn’t described yet. Only how to configure your system to start coding, code a sample and test it on your server.
But it should get you on your way to start getting your hands dirty in the new Vail SDK. Have fun! 😉

You can find it here.
The Vail SDK can be found here.

If you have comments, remarks, ideas, tips, additions,… don’t hesitate to contact me at contact (at)
More articles will follow later,

‘Newbie WHS Developer Kit’ Released

December 8, 2009

Problem in the past for newbie WHS developers, was that documentation/information on how to build add-ins, use the API’s etc… was scarce.
At the time I started developing AutoExit (2007) there wasn’t a lot of info, but luckily you had guys like Brendan Grant that hacked it and documented stuff. 😉

Now fastforward to 2009 and you will find a lot more info: on MSDN, Brendan Grant, Sam Wood have great tutorials, I have tutorials (see on this blog),…
Problem still is, that as a newbie you have all these resources but how & where do you start? You can use Sam Woods tutorials that walk you through step by step, then look into Brendans documents to get info on the controls e.g and read mine to use certain undocumented classes, use the Microsoft forums,…

What I tried to do is create 1 package with all kinds of tutorials by combining them and walking you through the different steps of setting up a development environment up until the release, but also by including on how to create help files, localize an add-in, test it, release it,…

Luckily I got permission from Sam Wood to include his articles so that I didn’t have to re-write big parts that already existed and I also got Brendan’s permission to use his info.
Which of course helped a lot to decrease the time to get this out to you guys! 😉

I hope by creating such a ‘bundled package’  that a newbie WHS developer has a guide to walk him/her through the whole process and at the end have an add-in that is ready for the public to use.

Now this kit/documentation is what Sam likes to call a ‘living document‘, which means it constantly changes and is basically never finished.
It is still rough around the edges and probably still contains some mistakes, so if you have remarks/ideas/fixes/… let me know and maybe I can include them!

A note before you begin: Do not send WHS development related questions to me or anyone else that helped in creating this guide.
Use the Microsoft forums and people will try to answer as much as possible over there, like works now.
Only contact me in private if you have questions/… regarding the kit itself.

I would like to thank Sam for helping me by donating his articles and for reviewing the document/kit + giving feedback.
And the same for Brendan who also let me use his articles.

Enjoy & go spread the word!
You can download it here.

It would be nice if you started your ‘WHS add-in author career’ with this guide, that you mention it on your site and link back to this blog/article + send me information about your add-in. I can then also post it on this blog.

AutoExit 2009 Release Candidate

October 14, 2009

2 months ago Beta-1 of AutoExit was released.
Thanks for all the great feedback you guys sent me!

In the meantime, time didn’t stand still and I worked on the last main feature that was planned for the 2009 version: making it multilingual.
The Release Candidate now fully supports: French, German & Japanese! 🙂

I have to give a special thanks to these people for helping with the translations, it couldn’t have been done without them:
Yoshihiro Okabe (WHS MVP): (Japanese)
Sébastien (French WHS Site): (French)
Christian Baumann: (German)

Let me know if you find spelling mistakes so that they can be fixed by the final version.

I still haven’t found any translator for Spanish, mail me if you are interested in helping out!

Download the new version here:

AutoExit 2009 (Muliple Languages)
AutoExit 2009 (Muliple Languages)

Have fun!

Undocumented WHS Classes: NetworkUtils

October 8, 2009

Another small class, in the series of undocumented API’s in Windows Home Server.

This new article describes the undocumented functions in the NetworkUtils class which is located in WHSCommon.dll.
This class contains 2 handy functions to get IP/Mac address of the server & the IP of the router.

void GetRouterIPAndServerMAC(out string ip, out string mac)
Get the IP address of the router and mac address of the server.

Sample code
string ip, mac;
NetworkUtils.GetRouterIPAndServerMAC(out ip, out mac);

Sample output

string GetServerIP()
Get the IP address of the server.
Sample code
string serverIp = NetworkUtils.GetServerIP();

Sample output

So as you see, two very easy to use functions, that a very handy!
You can follow ASoft @Twitter:

Have fun!