在 SharePoint 中的"800703fa 非法操作被标记为删除的注册表项上"错误

重要说明:本文是由 Microsoft 机器翻译软件进行的翻译并可能由 Microsoft 社区通过社区翻译机构(CTF)技术进行后期编辑,或可能是由人工进行的翻译。Microsoft 同时向您提供机器翻译、人工翻译及社区后期编辑的文章,以便对我们知识库中的所有文章以多种语言提供访问。翻译的文章可能存在词汇、句法和/或语法方面的错误。Microsoft 对由于内容的误译或客户对内容的使用所导致的任何不准确、错误或损失不承担责任。

点击这里察看该文章的英文版: 3114011
故障现象
在 Microsoft SharePoint 2013 或 Microsoft SharePoint 2011 操作将失败,并请参阅 ULS 在 SharePoint 错误信息中记录下面的 COMException 错误消息 ︰

[System.Runtime.InteropServices.COMException (0x800703FA): 检索与 CLSID 组件 COM 类工厂 {<GUID>} 失败,出现以下错误 ︰ 试图在标记为删除的注册表项上 800703fa 操作非法。<b00> </b00> </GUID>

在几种不同情况下可能发生此错误。例如,请参见以下日志项的情况下,可能发生此错误 ︰

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 的分布式服务支持团队博客文章 ︰

属性

文章 ID:3114011 - 上次审阅时间:03/17/2016 01:29:00 - 修订版本: 1.0

Microsoft SharePoint Server 2013, Microsoft SharePoint Server 2010

  • kbmt KB3114011 KbMtzh
反馈