[SharePoint 2010] FIMSynchronizationService Errors After SP1 Install – Microsoft SharePoint is not supported with version 4.0.30319.235 of the Microsoft .Net Runtime
Update 2011-07-13: This issue was fixed in the re-released version of the June 2011 Cumulative Update. If you have installed the initial release of the June 2011 Cumulative Update, it is recommended to install the re-released version to ensure the issues in the first release are resolved.
After installing Service Pack 1 for SharePoint 2010, my User Profile Synchronization began throwing errors in the Windows Event Log. The most concerning one was the following:
The extensible extension returned an unsupported error. The stack trace is: "System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.PlatformNotSupportedException: Microsoft SharePoint is not supported with version 4.0.30319.235 of the Microsoft .Net Runtime. at Microsoft.SharePoint.Administration.SPConfigurationDatabase.get_Farm() at Microsoft.SharePoint.Administration.SPFarm.FindLocal(SPFarm& farm, Boolean& isJoined) at Microsoft.SharePoint.WebControls.SPControl.SPWebEnsureSPControl(HttpContext context) at Microsoft.SharePoint.SPContext.get_Current() at Microsoft.Office.Server.UserProfiles.ProfileManagerInstance.GetApplicationProxy() at Microsoft.Office.Server.UserProfiles.ProfileImportExportService.GetPartitionIds() --- End of inner exception stack trace --- at System.RuntimeMethodHandle._InvokeMethodFast(IRuntimeMethodInfo method, Object target, Object[] arguments, SignatureStruct& sig, MethodAttributes methodAttributes, RuntimeType typeOwner) at System.RuntimeMethodHandle.InvokeMethodFast(IRuntimeMethodInfo method, Object target, Object[] arguments, Signature sig, MethodAttributes methodAttributes, RuntimeType typeOwner) at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture, Boolean skipVisibilityChecks) at System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture) at Microsoft.Office.Server.WebServiceDirectProxy.WebMethodInfo.Invoke(Object webServiceInstance, Object[] args) at Microsoft.Office.Server.WebServiceDirectProxy.Invoke(String methodName, Object[] args) at Microsoft.Office.Server.UserProfiles.ManagementAgent.ProfileImportExportDirect.GetPartitionIds() at Microsoft.Office.Server.UserProfiles.ManagementAgent.ProfileImportExportExtension.Microsoft.MetadirectoryServices.IMAExtensibleFileImport.GenerateImportFile(String fileName, String connectTo, String user, String password, ConfigParameterCollection configParameters, Boolean fFullImport, TypeDescriptionCollection types, String& customData) Forefront Identity Manager 4.0.2450.34"
It seemed like the Forefront Identity Manager began targeting .NET 4 all of a sudden instead of .NET 2/3.5. In the following config file, I found that a reference to .NET 4 had been added to the supported runtimes:
C:Program FilesMicrosoft Office Servers14.0Synchronization ServiceBinmiiserver.exe.config
<startup useLegacyV2RuntimeActivationPolicy="true">
<supportedRuntime version="v2.0.50727"></supportedRuntime>
<supportedRuntime version="v4.0.30319"></supportedRuntime>
</startup>
I simply removed the v4.0 reference and it started working again.
<startup useLegacyV2RuntimeActivationPolicy="true">
<supportedRuntime version="v2.0.50727"></supportedRuntime>
</startup>
That’s it. Not sure why this was added in Service Pack 1, but this resolves the issues.
Update: Be sure to restart both Forefront Identity Manager services in the Windows Services and perform a full synchronization after making this change.
1 Comment
Leave a comment
Follow John Chapman
SharePoint StackExchange
- http://t.co/d2YzH8q1 - #sharepoint - [SharePoint 2010] Specifying Which Server a Custom Timer Job Will Run On
- Always have your stuff when you need it with @Dropbox. 2GB account is free! http://t.co/kczsnniq
- http://t.co/iLWV2Kwp - #sharepoint - [SharePoint 2010] Web Analytics: Monitors the health of the Report Consolidator component
Recent Posts
- [SharePoint 2010] Specifying Which Server a Custom Timer Job Will Run On
- [SharePoint 2010] Web Analytics: Monitors the health of the Report Consolidator component
- [SharePoint 2010 / SQL Server 2008] Query the SharePoint Object Model from a .NET SQL Server CLR Function
- [SharePoint 2010] Debugging a Custom SharePoint Timer Job
- [SharePoint 2010] Set Access Request Email for All SharePoint Sites

Hello John,
I know that fror Upgrade some Windows Services e.g. the integrated FIM Service need that the Farm admin is part of the local Administrators Group. So the SP Farm Admin account have to add to the local administrators group for each upgrade. Otherwise a upgrade could issued the FIM Service and SharePoint want NOT to be work.