hmmm.. Tried this on a Windows 2003 Server and it works, but the behavior for hide is weird. It HIDES, it does not become visible in the tray like it does on XP.

Well, I've confirmed though that the code I've supplied does modify the correct hex value and sets the check mark.