"800703fa レジストリ キーに対して無効な操作が試行されました" エラー

現象

Microsoft SharePoint 2013 または Microsoft SharePoint 2010 での操作が失敗し、次の COMException エラー メッセージが SharePoint LogViewer の ULS に記録されます。

[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.  

このエラーは、いくつかの異なるシナリオで発生する可能性があります。 たとえば、このエラーは、次のログ エントリが表示されるシナリオで発生する可能性があります。

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)

原因

この問題は通常、管理者がサービス アカウントを使用して対話型セッションのためにサーバーにログオンした後にログオフした後に発生します。 たとえば、管理者はファーム アカウントを使用して Web フロントエンド (WFE) サーバーにログオンし、ログオフできます。 このアクティビティにより、そのアカウントのプロファイルでレジストリ キーが強制的にアンロードされます。 この条件により、キーは今後使用できなくなります。

解決方法

この問題を解決するには、次のいずれかの方法を使用します。

方法 1

サービス アカウントを使用して対話型セッションのためにサーバーにログオンしないでください。

方法 2

関連する Windows ユーザー プロファイル サービス機能を無効にします。 これを行うには、次の手順を実行します。

  1. 影響を受けるサーバーでグループ ポリシー エディター (Gpedit.msc) を開きます。

  2. 次のパスで UserProfiles フォルダーを開きます。

    コンピューターの構成>管理用テンプレート>システム>UserProfiles

  3. [ ユーザー ログオフ時にユーザー レジストリを強制的にアンロードしない ] 設定を見つけます。

  4. 設定を [有効] に変更します。

詳細情報

詳細については、次の MSDN Distributed Services サポート チームのブログ記事を参照してください。

COM+ アプリケーションは、ID ユーザーがログオフしたときに Windows Server 2008 で動作を停止する可能性があります

さらにヘルプが必要ですか? SharePoint コミュニティにアクセスしてください。