Поделиться через


Ошибка "800703fa попытка незаконной операции с разделом реестра"

Признак

Операция в Microsoft SharePoint 2013 или Microsoft SharePoint 2010 завершается сбоем, и вы увидите следующее сообщение об ошибке COMException, зарегистрированное в ULS в SharePoint LogViewer:

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

Причина

Эта проблема обычно возникает после того, как администратор использует учетную запись службы для входа на сервер для интерактивного сеанса, а затем выключается. Например, администратор может войти на сервер веб-интерфейса (WFE) с помощью учетной записи фермы, а затем выйти из системы. Это действие приводит к выгрузке разделов реестра в профиле этой учетной записи. Это условие делает ключи недоступными для использования в будущем.

Разрешение

Чтобы устранить эту проблему, используйте один из следующих методов.

Способ 1

Не войдите на сервер для интерактивных сеансов с помощью учетной записи службы.

Способ 2

Отключите связанную функцию Службы профилей пользователей Windows. Для этого выполните следующие действия:

  1. Откройте редактор групповая политика (Gpedit.msc) на затронутом сервере.

  2. Откройте папку UserProfiles по следующему пути:

    Конфигурация> компьютераАдминистративные шаблоны>Системы>UserProfiles

  3. Найдите параметр Не выгружать реестр пользователей при выходе пользователя .

  4. Измените параметр на Включено.

Дополнительные сведения

Дополнительные сведения см. в следующей статье блога группы поддержки распределенных служб MSDN:

Приложение COM+ может перестать работать в Windows Server 2008, когда пользователь удостоверений выключается

Требуется дополнительная помощь? Посетите сайт сообщества SharePoint.