Sehr leicht scheint es in VB.NET zu gehen
http://support.microsoft.com/kb/304289/de
Dieses c++ Beispiel zeigt, wie es über die WinAPI funktioniert. Prinzipiell kann man es über die WinAPI so (nicht exakt mit diesem Code, aber auf diese Art) in jeder Sprache machen, in der man die WinAPI nutzen kann.
http://msdn2.microsoft.com/en-us/library/ms724429(VS.85).aspx
*Edit*
Sehe gerade Vista ist noch nicht mit dabei.
Müsstets Du einfach mal Probieren, was er Dir da zurückgibt oder mal die MSDN weiterdurchwühlen.