Fehler "800703fa Illegal operation attempted on a registry key"

Problembeschreibung

Ein Vorgang in Microsoft SharePoint 2013 oder Microsoft SharePoint 2010 schlägt fehl, und die folgende COMException-Fehlermeldung wird in ULS in SharePoint LogViewer protokolliert:

[System.Runtime.InteropServices.COMException (0x800703FA): Retrieving the COM class factory for component with CLSID {<GUID>} failed due to the following error: 800703fa Illegal operation attempted on a registry key that has been marked for deletion.  

Dieser Fehler kann in verschiedenen Szenarien auftreten. Dieser Fehler kann beispielsweise in Szenarien auftreten, in denen die folgenden Protokolleinträge angezeigt werden:

11/03/2015 20:09:45.83 w3wp.exe (0x1A24) 0x46CC SharePoint Portal Server Microfeeds ada0j Unexpected
MicroBlogList.GetMicroBlogPostsForRePopulation http://mysite/personal/12345 permanent failure
Exception:
[System.Runtime.InteropServices.COMException (0x800703FA): Retrieving the COM class factory for component with CLSID
{BDEADF26-C265-11D0-BCED-00A0C90AB50F} failed due to the following error: 800703fa Illegal operation attempted on a registry key that has been marked for deletion. (Exception from HRESULT: 0x800703FA).
at Microsoft.SharePoint.Library.SPRequest..ctor()
at Microsoft.SharePoint.SPGlobal.CreateSPRequestAndSetIdentity(...)
at Microsoft.SharePoint.SPRequestManager.GetContextRequest(SPRequestAuthenticationMode authenticationMode)
at Microsoft.SharePoint.Administration.SPFarm.get_RequestAny()
at Microsoft.SharePoint.SPSecurity.GetCurrentUserTokenNoApplicationPrincipalDelegated(SPWebApplication webApp, Uri siteUrl)
at Microsoft.SharePoint.SPSecurity.GetCurrentUserToken()
at Microsoft.SharePoint.SPSecurity.EnsureOriginatingUserToken()
at Microsoft.SharePoint.SPSecurity.RunWithElevatedPrivileges(WaitCallback secureCode, Object param)
at Microsoft.SharePoint.SPSecurity.RunWithElevatedPrivileges(CodeToRunElevated secureCode)
at Microsoft.Office.Server.UserProfiles.SPS2SAppContext.GetClientContext(...)
at Microsoft.Office.Server.UserProfiles.SPS2SAppExecutionContextBase.get_ClientContext()
at Microsoft.Office.Server.Microfeed.SPMicrofeedStore.Query(...)
at Microsoft.Office.Server.Microfeed.MicroBlogList.ExecuteRepopulationCamlQuery(...)
at Microsoft.Office.Server.Microfeed.MicroBlogList.GetMicroBlogPostsForRePopulation...)]
Handling an exception. Exception details: System.Runtime.InteropServices.COMException (0x800703FA): Retrieving the COM class factory for component with CLSID {BDEADF26-C265-11D0-BCED-00A0C90AB50F} failed due to the following error: 800703fa Illegal operation attempted on a registry key that has been marked for deletion. (Exception from HRESULT: 0x800703FA).  
at Microsoft.SharePoint.Library.SPRequest..ctor()  
at Microsoft.SharePoint.SPGlobal.CreateSPRequestAndSetIdentity(...)  
at Microsoft.SharePoint.SPRequestManager.GetContextRequest(SPRequestAuthenticationMode authenticationMode)  
at Microsoft.SharePoint.Administration.SPFarm.get_RequestAuthAny()  
at Microsoft.SharePoint.Administration.SPAcl`1.CalculatePermissions()  
at Microsoft.SharePoint.Administration.SPIisWebServiceApplication.CheckAccess(SPIisWebServiceApplicationRights rights)  
at Microsoft.SharePoint.Taxonomy.MetadataWebServiceApplication.DoesUserHavePermissions(...)  
at Microsoft.SharePoint.Taxonomy.MetadataWebServiceApplication.GetChangedTermSets(...)  
at SyncInvokeGetChangedTermSets(Object , Object[] , Object[] )  
at System.ServiceModel.Dispatcher.SyncMethodInvoker.Invoke(Object instance, Object[] inputs, Object[]& outputs)  
at System.ServiceModel.Dispatcher.DispatchOperationRuntime.InvokeBegin(MessageRpc& rpc)  
at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage5(MessageRpc& rpc)  
at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage31(MessageRpc& rpc)  
at System.ServiceModel.Dispatcher.MessageRpc.Process(Boolean isOperationContextSet)

Ursache

Dieses Problem tritt in der Regel auf, nachdem ein Administrator ein Dienstkonto verwendet hat, um sich für eine interaktive Sitzung beim Server anzumelden und sich dann abzumelden. Beispielsweise kann sich ein Administrator mit dem Farmkonto bei einem WFE-Server (Web Front End) anmelden und sich dann abmelden. Diese Aktivität erzwingt, dass die Registrierungsschlüssel im Profil dieses Kontos entladen werden. Diese Bedingung sorgt dafür, dass die Schlüssel für die zukünftige Verwendung nicht mehr verfügbar sind.

Lösung

Verwenden Sie eine der folgenden Methoden, um dieses Problem zu beheben.

Methode 1

Melden Sie sich nicht mit einem Dienstkonto für interaktive Sitzungen beim Server an.

Methode 2

Deaktivieren Sie das zugehörige Feature des Windows-Benutzerprofildiensts. Gehen Sie dazu wie folgt vor:

  1. Öffnen Sie den Gruppenrichtlinie-Editor (Gpedit.msc) auf dem betroffenen Server.

  2. Öffnen Sie den Ordner UserProfiles im folgenden Pfad:

    Computerkonfiguration>Administrative Vorlagen>System>UserProfiles

  3. Suchen Sie die Einstellung Benutzerregistrierung bei Benutzeranmeldung nicht zwangsweise entladen.

  4. Ändern Sie die Einstellung in Aktiviert.

Weitere Informationen

Weitere Informationen finden Sie im folgenden Blogartikel des MSDN Distributed Services-Supportteams:

Eine COM+-Anwendung funktioniert unter Windows Server 2008 möglicherweise nicht mehr, wenn sich der Identitätsbenutzer abmeldet.

Benötigen Sie weitere Hilfe? Navigieren Sie zu SharePoint-Community.