Aracılığıyla paylaş


"800703fa Kayıt defteri anahtarında geçersiz işlem denendi" hatası

Belirti

Microsoft SharePoint 2013 veya Microsoft SharePoint 2010'da bir işlem başarısız olur ve SharePoint LogViewer'da ULS'de günlüğe kaydedilen aşağıdaki COMException hata iletisini görürsünüz:

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

Bu hata birkaç farklı senaryoda oluşabilir. Örneğin, bu hata aşağıdaki günlük girdilerini gördüğünüz senaryolarda oluşabilir:

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)

Neden

Bu sorun genellikle yönetici etkileşimli bir oturum için sunucuda oturum açmak için bir hizmet hesabı kullandığında ve ardından oturumu kapattıktan sonra oluşur. Örneğin, bir yönetici grup hesabını kullanarak bir Web Ön Uç (WFE) sunucusunda oturum açabilir ve ardından oturumu kapatabilir. Bu etkinlik, kayıt defteri anahtarlarını bu hesabın profilinde kaldırılmaya zorlar. Bu koşul anahtarların gelecekte kullanım dışı olmasını sağlar.

Çözüm

Bu sorunu çözmek için aşağıdaki yöntemlerden birini kullanın.

Yöntem 1

Bir hizmet hesabı kullanarak etkileşimli oturumlar için sunucuda oturum açmayın.

Yöntem 2

İlgili Windows Kullanıcı Profili Hizmeti özelliğini devre dışı bırakın. Bunu yapmak için şu adımları uygulayın:

  1. Etkilenen sunucuda grup ilkesi düzenleyicisini (Gpedit.msc) açın.

  2. Aşağıdaki yolda UserProfiles klasörünü açın:

    Bilgisayar Yapılandırması>Yönetim Şablonları>Sistem>UserProfiles

  3. Kullanıcı oturum kapatma sırasında kullanıcı kayıt defterini zorla kaldırma ayarını bulun.

  4. Ayarı Etkin olarak değiştirin.

Ek Bilgi

Daha fazla bilgi için aşağıdaki MSDN Dağıtılmış Hizmetler Destek Ekibi Blogu makalesine bakın:

Bir COM+ uygulaması, kimlik kullanıcısı oturumu kapattığında Windows Server 2008'de çalışmayı durdurabilir

Yine de yardım mı gerekiyor? SharePoint Topluluğu'na gidin.