How does Configuration Manager 2007 work with .NET Framework 4.0
First of all, Configuration Manager 2007 can work with .NET Framework 4.0, for the official support statement please reference to
.NET Framework 4.0 is now supported with Configuration Manager 2007 SP1 and SP2.
System Center Configuration Manager 2007 SP1 and SP2 now support the .NET Framework 4.0 with the following limitations.
· Forcing the system to use only the .NET 4.0 CLR by enabling the following registry key is not supported.
· .NET Framework 2.0 is required to be installed on Windows XP and Windows 2003 in order for the Desired Configuration Management (DCM) feature to check compliance.
But Configuration Manager 2007 cannot work with “.NET Framework 4.0 only” mode, why?
1. SQL 2008 dependencies: In SQL Server 2008 and SQL Server 2008 R2, its managed assemblies can only be loaded with .NET 2.0 SP2 or 3.5 SP1 (both based on CLR 2.x).
2. WSUS 3.0 SP2 pre-requisites: WSUS 3.0 SP2 requires ASP .NET 2.0. (see http://technet.microsoft.com/en-us/library/dd939916(WS.10).aspx)
Because of 1, if you force system to use .NET Framework 4.0 only you will not be able to install SQL server, thus Configuration Manager 2007 cannot be installed.
Because of 2, you cannot enable Remote System Update Point from UI. You will get error message:
System.TypeInitializationException: The type initializer for 'Microsoft.ConfigurationManagement.AdminConsole.SoftwareUpdateManagementPoint.SumpUtilities' threw an exception. ---> System.ArgumentException: An item with the same key has already been added.
at System.ThrowHelper.ThrowArgumentException(ExceptionResource resource)
at System.Collections.Generic.Dictionary`2.Insert(TKey key, TValue value, Boolean add)
Besides those two reasons, Configuration Manager 2007 Desired Configuration Management (DCM) feature also requires .NET Framework 2.0 to be installed on client, it will check the registry key: HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\.NETFramework\\policy\\v2.0. If it does not exist, then DCM feature will not be enabled. This specific registry key exists on Vista/Windows 7/Windows Server 2008 and later by default even without explicitly installation of .NET Framework 2.0, but it doesn’t exist on XP and Windows 2003 by default.