Themes in Remote Desktop

Forums Operating Systems Windows Server 2008 Wish List Progress Themes in Remote Desktop

Viewing 21 reply threads
  • Author
    Posts
    • #42936
      Arris
      Moderator

        Description: Want to have themes in a remote desktop session to Windows Server 2008, but you can only use the Windows Classic theme. There is already a topic on the Microsoft TechNet Forum about this issue.

        Tips
        – When you interrupt the connection while connected (for example pull out your network cable for a few seconds), you often get the Vista themes.
        – Install the Terminal Services Server Role using the Server Manager.

        Partial Solution
        – [localurl=/forum/viewtopic.php?p=4494#p4494:25qvb6qs]Play[/localurl:25qvb6qs] a little with the registry to get Vista Basic. (Thanks to Massoud)

        – Patch the tstheme.exe dll using this tutorial. Now you got Vista Basic theme in Remote Desktop; Aero isn’t working (yet). Note that even if you uncheck the “Themes” checkbox in the Remote Desktop Client you will get themes after applying this patch. Forum member lars has made a nice little utility to patch the file automatically. This utility can be downloaded [localurl=/wp-content/uploads/2009/08/2k8-RDPThemePatch.zip:25qvb6qs]here[/localurl:25qvb6qs] (89,1KB) and works on Windows Server 2008 x86/x64 SP1/SP2.

      • #45543

        What about themes in Remote Apps? (full Terminal Server role)

      • #45544

        I thought theme is enabled by default? I can remote to the same machine and get Vista Basic, just not Aero.
        Same with Remote App

      • #45545
        Arris
        Moderator

          You probably installed the Terminal Services Server Role to use Remote App, so because of that you have themes when you connect to that Windows Server 2008. Most people don’t want to install the Terminal Services role, but just use the option “Allow connections from computers running any version of Remote Desktop (less secure)” or “Allow connections only from computers running Remote Desktop with Network Level Authentication (more secure)” in Start -> Run -> SystemPropertiesRemote.

          Also, we ‘d like to get Aero in Remote Desktop when we are connecting from a Vista (or later) client that has Aero enabled, like Vista. It is one of Vista’s remote desktop features.

        • #45546

          Also, we ‘d like to get Aero in Remote Desktop when we are connecting from a Vista (or later) client that has Aero enabled, like Vista. It is one of Vista’s remote desktop features.

          I believe it’s one of the selling points of server 2008 r2:
          http://209.85.173.132/search?q=cache:iMXNi6j618YJ:download.microsoft.com/download/f/2/1/f2146213-4ac0-4c50-b69a-12428ff0b077/Windows_Server_2008_R2_Reviewers_Guide_(BETA).doc&hl=en&ct=clnk&cd=1&gl=us

          Improving User Experience through new Remote Desktop Protocol capabilities. These new capabilities, enabled with Windows Server 2008 R2 in combination with Windows7, improve significantly the experience of remote users, making it more similar to the experience enjoyed by users accessing local computing resources. These improvements include:
          ……
          * Aero Glass support: VDI provides users with the ability to use the AeroGlass UI for client desktops; ensuring that remote desktop sessions look and feel like local desktop sessions.
          ……

        • #45547
          Arris
          Moderator

            @imess wrote:

            I believe it’s one of the selling points of server 2008 r2

            That’s possible but it must be a module or registry setting that we just can’t have themes/Aero when using Remote Desktop. If you have an Aero enabled Vista client and Vista server it IS possible. Also as you can see in my first post, it is possible to get themes in remote desktop by interrupting the connection. It looks that by interrupting the connection it skips some check it does at the rdp start up and so enables themes.

            The only problem to find out what we have to patch is difficult while there are many files/settings accessed when opening a Remote Desktop Connection.

            Arris

          • #45548

            I have discovered that there is a registry key created at first logon using RD, HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionThemeManagerRemote
            When the network is interupted and RD is forced to reconnect, that key and it’s contents are not present, and themes work. I deleted the key from within the RD session, then enabled the aero theme just fine. I then created a self extracting .exe file consisting of 2 files, enable.theme.bat, and enable.theme.reg. When you run the file, enabletheme.exe , it will delete the offending reg key, then simply apply aero theme normally.
            You can download my enablethemes.exe here: http://www.pcdocsplace.com/files/enablethemes.exe This isnt a virus or anything, you can extract the .exe and look at the 2 files to see exactly what I have done before running the .exe file, so don’t worry :). I hope this helps….pcdoc_

            I have also posted this information here: http://social.technet.microsoft.com/forums/en-US/winserverTS/thread/6f76efb1-920c-435e-be29-d204052ed2f2/?prof=required

          • #45549
            Arris
            Moderator

              Wow, nice discovery pcdoc_! 🙂 That’s indeed the registry key we are looking for! Good to see we have progress in this wish. Probably with this information we can find a more clean method of permanently enabling themes in Remote Desktop. Found out using Sysinternals Process Monitor that the registry key HKCUSoftwareMicrosoftWindowsCurrentVersionThemeManagerRemote is created by C:WindowsSystem32TSTheme.exe.

              Maybe someone who knows how to dissasemble/patch this file can make a permanent solution for this. Anyway, I will take a look at this as soon as possible!

              Thanks again for this information! 😉

              Arris

            • #45550

              Arris, it was your original post that let me know themes were even possible with your ‘network interuption’ trick 😀 . Thats also some great info on the TSTheme.exe thing, i’ll look into that myself…if we all keep working together, we’ll whip this thing 😉

              Also, special thanks to sudeepg from this thread: http://social.technet.microsoft.com/forums/en-US/winserverTS/thread/6f76efb1-920c-435e-be29-d204052ed2f2/?prof=required , for pointing us to the correct reg key.

              doc

            • #45551
              Arris
              Moderator

                Got some progress but will look into it deeper as soon as I have time. Here is the method to have the Vista Basic theme in Remote Desktop in Windows Server 2008 x64 SP1 without having to interrupt your connection or use an other trick. I couldn’t get Aero via Remote Desktop working yet.

                1. Go to %windir%System32 and make a backup of tstheme.exe (e.g. tstheme.exe.bak).
                2. Copy tstheme.exe to an other directory (e.g. your Desktop) and open it in an Hex Editor like Hex Workshop.
                3. At offset 0x00006B7A replace the hex values “8D 15 80 A7 FF FF” with “C7 C2 01 00 00 00”.
                4. At offset 0x00007324 replace the hex values “75 0D” with “90 90”.
                5. Save the file and copy it back to %windir%System32 overwriting the existing one. (Check this page if you can’t overwrite it)
                6. Delete the registry key HKCUSoftwareMicrosoftWindowsCurrentVersionThemeManagerRemote.
                7. Log in using Remote Desktop and enjoy the Vista Basic theme! 😉

                I’m not sure if this is the most elegant way but at least it works. Maybe it’s also possible with just a reghack… Will look for x86/x64 SP1 and SP2 patches later.

                Good luck!

                Arris

              • #45552

                Hi guys, great work with tweaking the “restricted” themes RDP > WS2K8. I am sitting on a 32-bit server 2008 SP1 enterprise and i have tried your fix Arris but in the hex workshop i can not find the hex data you have entered for me to change (0x00006B7A , 0x00007324). I have tried searching in hex and dec and with the different languages etc. nit with no luck…
                Regarding the different versions OS, this file should be the same? Can you possibly link the “Tstheme.exe” file for download? Can that work? If not can i just replace original “Tstheme.exe” and back to the way it was?
                Is there anything else i can do?
                I really hope we can find a fix for this soon!!!! 😀 😀 😀

                Thanks again for great tweaking etc.
                Regards. Henrik

              • #45553
                Arris
                Moderator

                  Found a more specific location to patch the dll so you don’t need to replace multiple values nor you have to delete a registry key. Couldn’t get Aero working over Remote Desktop yet, maybe someone else can help? Anyway, here are the steps for Windows Server 2008 SP1/SP2 x86/x64. I only tested the SP1 x64 so please confirm the others are working too! :geek:

                  1. Go to %windir%System32 and make a backup of tstheme.exe (e.g. tstheme.exe.bak).
                  2. Copy tstheme.exe to an other directory (e.g. your Desktop) and open it in an Hex Editor like Hex Workshop.
                  3. Depending on your Server 2008 version replace the following hex values:

                  Version: SP1 x86 – Verified
                  MD5: d9383476ca1b8c9fda2909815f4c45ad
                  Find: 75 36 FF B5 5C
                  Replace with: E9 33 00 00 00

                  Version: SP1 x64 – Verified
                  MD5: 73ee3acb4284f47fee55f2dfa634c3fb
                  Find: 75 33 8B 44 24
                  Replace with: E9 30 00 00 00

                  Version: SP2 x86 – Verified
                  MD5: 1904dba08c2d63ce2025cad78f5df2bb
                  Find: 75 36 FF B5 5C
                  Replace with: E9 33 00 00 00

                  Version: SP2 x64 – Verified
                  MD5: 73ee3acb4284f47fee55f2dfa634c3fb
                  Find: 75 33 8B 44 24
                  Replace with: E9 30 00 00 00

                  4. Save the file and copy it back to %windir%System32 overwriting the existing one. (Check this page if you can’t overwrite it)
                  5. Log in using Remote Desktop and enjoy the Vista Basic theme! 😉

                  Good luck! 🙂

                • #45554

                  Version: SP1 x86
                  OK and working.
                  Great work 🙂 🙂 🙂
                  Thanks , Henrik

                • #45555

                  Server 2008 x64 SP2

                  Works like charm !

                  Thx.

                • #45556
                  Arris
                  Moderator

                    Thanks hpl.hp and lars for your feedback! 🙂 I updated the post.

                  • #45557

                    Arris, I just checked it in a VM I still had running x86 SP2, your patch works there as well. It was the least I could do in return. Thanks again.

                  • #45558
                    Arris
                    Moderator

                      @lars wrote:

                      Arris, I just checked it in a VM I still had running x86 SP2, your patch works there as well. It was the least I could do in return. Thanks again.

                      Good work lars! 🙂 Updated the list again. 😉 Hope in the future we ‘ll also get Aero working. I looked into it some time ago, ran Sysinternals Process Monitor on both Vista x86 SP1 and Server 2008 x86 SP1 and compared the differences, but couldn’t find any registry setting yet on which Server 2008 decides to not use Aero… Also dissasembling several RDP-related executables/dll’s didn’t brought me any further. 🙄 However, we ‘ll get it sometime! :geek:

                    • #45559

                      A side effect of the patch solution is that themes/Aero basic is enabled for all sessions even if theme support is unchecked in the RDP client.

                    • #45560
                      Arris
                      Moderator

                        @TalynOne wrote:

                        A side effect of the patch solution is that themes/Aero basic is enabled for all sessions even if theme support is unchecked in the RDP client.

                        Thanks for notifying about this issue! I added it as a remark in the main topic.

                      • #45561

                        Thanks everyone for the pointers. I wanted the same results but was not happy with patching system files etc.

                        So I thought that if the creation of the Remote subkey in the registry is the reason why Vista theme cannot be selected, then just Deny the user the permission to create the subkey. I tried the theory and it worked!!!!! 😀

                        Steps are:
                        1. Login as the user for which you want to enable the Vista theme (this can by direct login or RDP login)
                        2. Open registry and goto key HKCUSoftwareMicrosoftWindowsCurrentVersionThemeManager
                        2b. If you logged in via RDP then Delete the Remote subkey at this point
                        3. Right click the ThemeManager key and select Permissions… from the context menu
                        4. Select the user and click the Advanced button to edit permissions
                        5. Select the user and click the Edit button to change the permissions
                        6. Select the Create subkeys Deny checkbox. Leave others checkboxes empty. On pressing OK you’d get a warning but click Yes.
                        7. Change to Vista Theme (if you hadn’t already). Logoff and RDP back in.
                        8. That’s all.

                        Enjoy.

                        And thanks again for giving me the idea.

                      • #45562
                        Arris
                        Moderator

                          @Massoud wrote:

                          Thanks everyone for the pointers. I wanted the same results but was not happy with patching system files etc.

                          So I thought that if the creation of the Remote subkey in the registry is the reason why Vista theme cannot be selected, then just Deny the user the permission to create the subkey. I tried the theory and it worked!!!!! 😀

                          That’s much easier/cleaner than my method so thank you! 🙂

                        • #45563

                          There is more elegant solution — you need to remove Read and Write permissions from all users to mentioned registry key.

                      Viewing 21 reply threads
                      • You must be logged in to reply to this topic.