AMD Catalyst Control Center Does Not Run on Windows Server 2008 R2

As described in an earlier post, the AMD Catalyst driver works well on the native 1920×1080 resolution of my HDTV. I however needed to adjust the screen offset a bit because some pixels go out of screen on the right side. I thought Catalyst Control Center (CCC) might help.

The CCC however did not run on Windows Server 2008 R2. Whenever I tried to run AMD VISION Engine Control Center I got the error message “Host application has stopped working”. The unhiding AppData directory trick did not solve the problem.

First Try on SxS

In Event Viewer | Windows Logs | Application, I saw that SetACL64.exe failed because the required MFC80 SxS assembly could be resolved:

Activation context generation failed for "C:\Program Files\ATI\CIM\Bin64\SetACL64.exe". Dependent Assembly Microsoft.VC80.MFC, processorArchitecture="amd64", publicKeyToken="1fc8b3b9a1e18e3b", type="win32", version="8.0.50608.0" could not be found. Please use sxstrace.exe for detailed diagnosis.

The Windows and System32 directories did not have MFC80*.DLL. The WinSxS folder did not have any MFC80 assembly, which means AMD installer did not install it as shared SxS assembly either. I could not find MFC80*.dll in C:\Program Files\ATI as well as C:\Program Files\ATI Technologies, so it was not installed as a private DLL.

So I installed Visual C++ 2005 SP1 Redistributable for x64, and now I saw mfc80 in winsxs. However, CCC still did not run and I saw the same assembly resolution error. CCC required an older version MFC80 (Version 8.0.50608.0). I checked winsxs and it now had a newer MFC80 (Version 8.0.50727.4053). But, winsxs\Manifests did not seem to have a redirection policy to allow broader binding. The Redistributable installed strict version binding only. Installing another version (8.0.50727.42) from Visual C++ 2005 Redistributable for x64 did not help either.

In the same Bin64 directory I found SetAcl64.exe.manifest, the application manifest. So modified it to point to version 8.0.50727.4053 of VC80’s CRT and MFC DLLs. No, it did not work.

Entered Dependency Walker for x64. Dependency Walker reported no dependency problem in SetACL64.exe.

So what’s wrong? I resorted to SxsTrace.exe. SxsTrace.exe Trace. Run AMD VISION Engine Control Center and see it fail. SxsTrace.exe Parse logfile. The parsed logfile shows no error.

Missing .NET Framework

What else? I checked then Event Viewer | Applications and Services Logs | ACEEventLog, and spotted exceptions of unable to load WPF windows from ATI modules. This means CCC is a .NET application, and it could not find some .NET components.

To check the installed .NET Frameworks in Windows Server 2008 R2, I had a look at registry HKLM\SOFTWARE\Microsoft\NET Framework Setup\NDP. Only v2.0.50727 was installed. Because WPF was first available with .NET 3.0, a later .NET Framework was necessary.

Windows Server 2008 R2 comes with .NET Framework 3.5, but it is not installed by default. I tried to run the web bootstrap installer of .NET Framework 3.5, and it refused to install and asked to be installed from Roles Management. I could install the Application Server role in Server Manager, but that would install, in addition to .NET 3.5, other services (like IIS) that I don’t really need. So I installed .NET Framework 3.5.1 Features instead. Check only .NET Framework 3.5.1, but uncheck WCF Activation, under .NET Framework 3.5.1 Features. Otherwise, IIS and others would have to be installed too, because WCF Activation depends on those.

However, the same error still happened after .NET Framework 3.5.1 was installed.

CCC.exe is a 32-bit application. Using Dependency Walker for x86, it is revealed that the mscoree.dll (.NET Runtime Execution Engine) that CCC.exe uses is of version 4.0. So I installed .NET Framework 4.0 on R2 (unlike .NET 3.5, the .NET 4.0 web installer just works).

Now, I run AMD VISION Engine Control Center and I get a warning message box stating that my AMD Driver has some problem and needs update. I know it is up to date. After dismissing the message box, the AMD VISION Engine Control Center finally appears!

To my disappointment, CCC does not have the functionality I wanted, to fine tune the display. It adds very little to what I already have with the display driver from Desktop right click menu.

Conclusion: If you get the same problem on Windows Server 2008 R2, just install .NET Framework 4.0.; but don’t expect too much from CCC.

P.S.: I ended up uninstalling the Control Center (but keeping driver) because it is not useful and the warning is an ugly greeting whenever I log in.

Edit 01/28/2012: As pointed out by JR in comments below (many thanks), there is a registry trick to work around the CCC warning of “The Catalyst Control Center is not supported by the driver version of your enabled graphics adapter”. For every GUID under HKLM\SYSTEM\ControlSet001\Control\Video\{GUID}000, check DeviceDescription. Skip entries like “Standard VGA Graphics Adapter”, “RDP Reflector Display Driver” and so on, and locate “ATI Mobility Radeon HD 4200 Series”. Then change Acceleration.Level from 4 to 0. After reboot, CCC runs without warning and allows me to adjust much more! In my case, I used Desktops and Displays | My VGA Displays | Image Adjustment, and I easily dragged the box in Screen Position and Size to move all the pixels into my HDTV’s displayable area.

About these ads

4 Responses to “AMD Catalyst Control Center Does Not Run on Windows Server 2008 R2”

  1. Heyho,
    Thanks 2 you! Had the same Problem and solved it with this instructions.
    Only installing .NET Framework 4.0 didn’t help but then activating .NET Framework 3.5.1 Feature worked fine.
    Then the Registry Hack and it’s done.
    thanks a lot

  2. Your blog with JR’s registry hack was all that was required to get rid of the ugly “The Catalyst Control Center is not supported by the driver version of your enabled graphics adapter” splash-screen on my HP Elitebook 8460p (shipped with Win7) working with Server 2012 DataCenter working using the default .NET 4.5 in Server 2012. I had already downloaded all the Windows 8 x64 bit drivers & software from HP but this was last thing needed. Thank You Thank You.

    FYI for those who don’t know:
    Server 2012 is the Server ver. of Win 8(x64), just as Server 2008 R2 is the Server ver of Win 7(x64), and Server 2008 (no R2, avail in x86 or x64) is the Server ver. of Vista. In other words Win8 x64 drivers work fine on Server 2012, and Win 7 x64 drivers work fine on Server 2008R2, and Win Vista drivers work fine on Server 2008. Except for bluetooth. [RANT]For some reason MS doesn’t like/want bluetooth to work on Server editions. There are workarounds involving installation of 3rd party (Soleil) bluetooth stacks and bringing over Desktop edition .dlls and drivers, and in some examples modifying driver INF files as needed to make them work on Server. After which, more ugly hacks are required to disable the inherent x64 bit Server edition enforcement of WHQL driver signing (opening big security hole) resulting in ugly “Test Mode” watermark on desktop and yet more ugly hacks to get rid of that too. Big mess.[/RANT]

Trackbacks

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Follow

Get every new post delivered to your Inbox.

Join 44 other followers

%d bloggers like this: