SBS 2008 and ‘Internal Website’ desktop shortcut

Wow, Microsoft can be annoying.

I have been googling for hours trying to find a solution to an issue with a new SBS 2008 box. In their infinite wisdom, the guys and girls at Microsoft decided that the default policy is for all client machines joining the domain to get a shortcut on their desktops to http://companyweb

I managed to isolate the group policy that was causing this to happen – it’s called “Windows SBS User Policy” – I managed to isolate it to the “User Settings” part of this policy – but for the life of me, do you think I could find an option in Group Policy configuration to disable this damn shortcut? As far as I can see, it doesn’t exist, and multiple Google (and even, cough, Bing) searches found little help other than perhaps writing a batch file to delete the thing if it appears. That doesn’t make sense to me – why can’t we just stop it being put there in the first place!

I refused to admit defeat and did some digging, and discovered that the shortcut is being added by the very similar GP.xml file that is referenced in this article. Note that the article refers to an XML file for a machine policy, where this one we’re looking for is a user policy, so the path is slightly different (in their path, replace ‘machine’ with ‘user’).

So, follow the directions in that article to find the GUID of the group policy, browse to C:/Windows/system/sysvol/domain/Policies/{YOUR GUID}/User/SBS/ and open up the GP.xml file with administrative privileges. You should see some lines of XML so you can glean some inkling as to what the file actually does. In my case, it looked like this:

< ?xml version="1.0" encoding="utf-16"?>
<gpsetting>
  <shortcutlink xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" Name="SBSDesktopLink" Location="Internal Web site.lnk" Target="http://companyweb/" CSIDFolder="16" WMIFilter="select * from Win32_OperatingSystem Where Version&gt;='5.1.2600' and '6.0.6000'&gt;Version" />
<shortcutlink xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" Name="SBSProgramLink" Location="Windows Small Business Server 2008\Internal Web site.lnk" Target="http://companyweb/" CSIDFolder="2" />
</gpsetting>

The first line adds a shortcut to the desktop for versions of Windows between 5.1.2600 and 6.0.6000, the second line adds a shortcut into the user’s Start/All Programs menu.

Initially I renamed this file, with no apparent ill effects. Then I had a rethink and decided I could probably just comment the offending line out, so I changed

<shortcutlink xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" Name="SBSDesktopLink" Location="Internal Web site.lnk" Target="http://companyweb/" CSIDFolder="16" WMIFilter="select * from Win32_OperatingSystem Where Version&gt;='5.1.2600' and '6.0.6000'&gt;Version" />

and just wrapped some comments around it, like so:

<!--
<ShortCutLink xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" Name="SBSDesktopLink" Location="Internal Web site.lnk" Target="http://companyweb/" CSIDFolder="16" WMIFilter="select * from Win32_OperatingSystem Where Version&gt;='5.1.2600' and '6.0.6000'&gt;Version" />
-->

Another possible solution would be to increase the starting version number in that file to something higher so it ignores clients with a lower version number.

Will post back here if I notice any adverse effects; but so far, so good. No links on desktop, everyone happy 🙂