Enable Disk Cleanup Utility in Windows 2008 R2

To cleanup your disks from old files, service packs and tempory internet files Windows 7 has a tool called Disk Cleanup.

By default, this tool is not installed on Windows 2008 R2.
There are two ways to enable this:

  1. Install the “Desktop Experience” feature.
    This will install several Windows 7 features on your Windows 2008 R2 server such as Windows Media Player, Photo Management and the Disk Cleanup Utility.
    This is of course something you do not want installed on your server. Also, the server requires a reboot after installing the feature.
  2. Copy the files from the WINSXS directory.
    An easier way of enabling this the cleanup utility is to copy the files from the winsxs directory.
    You need two files: cleanmgr.exe and cleanmgr.exe.muiCopy cleanmgr.exe from  C:\Windows\winsxs\amd64_microsoft-windows-cleanmgr_31bf3856ad364e35_6.1.7600.16385_none_c9392808773cd7da\cleanmgr.exe to %systemroot%\System32
    Copy cleanmgr.exe.mui from C:\Windows\winsxs\amd64_microsoft-windows-cleanmgr.resources_31bf3856ad364e35_6.1.7600.16385_en-us_b9cb6194b257cc63\cleanmgr.exe.mui to %systemroot%\System32\en-US

There you go!

IGEL – How to configure a RDP or ICA Session that shuts down IGEL after session has ended

1. Setting up an RDP Session.
2. Setting up a “Locale Shell/Application” IGEL Setup -> Accessories -> Terminals.
3. Configuring in IGEL Setup -> System -> Registry ->  sessions -> xterm0 -> cmdline the following entry:
/config/sessions/winconnect0 ; /sbin/user_shutdown -f
4. From now on don´t start the RDP session, but the local Shell.
For some reasons it could be useful to change the Name and the Icon of the local Shell:
5. Change the Parameter “sessions.xterm0.Icon” to winconnect.
6. Change name of “sessions.xterm0.Session Name” to “RDP Session” or something like this.

To complete it, you should configure in Setup the RDP Session that this Session should not be added to the start menu or on the Desktop/Application Launcher.

Of course xterm0 or winconnect0 is changed to xterm1-…or winconnect1-…, if the Session is not the first session on the Thin Client.

For the autostart Go to IGEL Setup -> Accessories -> Terminals -> Local Terminal and turn on the Autostart Checkbox.

This works for an ICA Session too. Change every “winconnect0” in this FAQ to “ica0”

This works only on Linux based IGEL devices.

Advanced Menu - Network Adapters

Network Adapter Priority Windows Server 2008 R2

What you do is go to Network and Sharing Center and click on the change adapter settings link. From there, if you have the Desktop Experience installed, you might not have the menu bar running across the top. You need to hit the Alt button on your keyboard in order to get the menu bar to show up. From the Advanced menu option, click Advanced Settings.

What will load is a funky little window with your adapters in the top part, and the bindings associated with the adapters on the bottom. For our purposes, you can ignore the bottom part of the window. We are only concerned with the top part.
In the top part you see all of your network adapters. You will also notice two arrows on the right of the selection window. What you are seeing is the adapter connection priority. The highest priority is on the top, running to the lowest priority on the bottom.
All that you need to do to set an adapter with a higher priority is to highlight the adapter, and click the up arrow. That’s it. Simple solution to a difficult problem.

After cleanup

Cleaning up the WINSXS folder in Windows 7 SP1

Earlier I wrote about the WINSXS directory in Windows Vista and Windows 2008.

In Windows 7 the cleanup tool is changed. Just like it changed with Service Pack 1 for Windows Vista en Windows 2008. 🙂

The new command is:
DISM /online /Cleanup-Image /SpSuperseded

Remember: This command requires elevated command prompt and you cannot uninstall the Service Pack after it completes!

UAC Virtualization – Allowing standard users to update a system protected area

You should know the score by now – I install application FOO into “C:\Program Files\Foo Inc\Foo” and it has a built-in manifest stating that asInvoker is used for its requested privilege level, allowing standard users to run it.

Attempts by standard users to write to “C:\Program Files\Foo Inc\Foo” do not fail with “access denied” (as they would have on version of Windows prior to Vista), but instead the disk write is redirected to the user’s own profiles (under “%userprofile%\AppData\Local\VirtualStore\Program Files”).

So far, so good – the application is happy as it believes it is able to write to a system protected area of the volume even when running without admin rights.


But imagine that FOO has an “automatic updater” or a “launcher” stub process whose job it is to check the current version of the application and download an update package & apply it…

The write operation is virtualized into the user’s profile, so the new patch will download okay – but when it comes to apply it this is also virtualized and the file it is updating or replacing is not in VirtualStore… so it fails.

Re-run the launcher and it will either start over with the download of the update, or try again to apply it and fail once more.


There are now plenty of apps (and games) that will run okay without admin privileges, but they have problems patching because of UAC virtualization unless the launcher was started elevated (or by the Administrator, who is the only user exempt from UAC as per my previous blog entry).

So how to leave UAC enabled and be able to use and update this program as a standard user?Continue reading