Momentan sunteți offline, așteptați să vă reconectați la internet

FIX: violare acces atunci când vă menţine RBS cu .NET Framework 4.0 în fișier de configurare asociate în SQL Server

IMPORTANT: Acest articol este tradus cu ajutorul software-ului Microsoft de traducere automată și poate fi corectat prin intermediul tehnologiei Community Translation Framework (CTF). Microsoft oferă articole traduse automat, post-editate de comunitate și articole traduse de oameni, pentru a permite accesul la toate articolele din Baza noastră de cunoștințe în mai multe limbi. Articolele traduse automat și post-editate pot conține greșeli de vocabular, sintaxă și/sau gramatică. Microsoft nu este responsabil de inexactitățile, erorile sau daunele cauzate de traducerea greșită a conținutului sau de utilizarea acestuia de către clienți. Găsiți mai multe informații despre traducerea în colaborare la http://support.microsoft.com/gp/machine-translation-corrections/ro.

Faceți clic aici pentru a vizualiza versiunea în limba engleză a acestui articol: 2960310
Simptome
Să presupunem că utilizați un furnizor de Remote BLOB Storage (RBS) particularizate împreună cu Runtime .NET Framework 4.0 pentru a stoca pete la distanță pentru Microsoft SharePoint 2013. Când încercați să executați curățare deșeuri care apelează intern Microsoft.Data.SqlRemoteBlobs.Maintainer.exe, primiți următorul mesaj de eroare în timpul colectare deșeuri:
Pornirea responsabilului activități.
Pornirea colectare deșeuri.
Pornirea scanării de referință.
Ora>: ERR: 0:::AssemblyLoad::: eroare la citirea extensie de fișier xxxx. RemoteBlobStoreProvider.dll.
Ora>: ERR: 0:::AssemblyLoad::: System.BadImageFormatException: această asamblare este construit de un runtime mai noi decât runtime încărcat în mod curent și nu poate fi încărcat. (Excepție de la HRESULT: 0x8013101B)
Ora>: ERR: 0:::AssemblyLoad::: la System.Reflection.Assembly.nLoadFile (String cale, dovada dovada)
Ora>: ERR: 0:::AssemblyLoad::: la System.Reflection.Assembly.LoadFile (String calea)Ora>: ERR: 0:::AssemblyLoad::: la Microsoft.Data.SqlRemoteBlobs.ProviderClass.Initialize()

Instrumentul responsabil este compilat utilizând runtime de .NET Framework 2.0 și acesta nu poate încărca asamblări bazate pe .NET Framework 4.0 pentru enumerarea pete și colectare deșeuri. Pentru orice aplicație .NET Framework, puteți utiliza fișier de configurare a aplicației, și adăugați eticheta supportedRuntime pentru a utiliza o versiune mai recentă versiune de .NET Framework. Fișierul de configurare a componentei responsabil este Microsoft.Data.SqlRemoteBlobs.MaintainerConfig.xml, ca în exemplul următor:
<startup>            <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/></startup>
Dacă încercați să executați curățare deșeuri, Microsoft.Data.SqlRemoteBlobs.Maintainer.exe întâlnește o excepție violare acces, după cum urmează:
System.AccessViolationException: A încercat pentru a citi sau scrie memoria protejată. Acest lucru este adesea un indiciu că alte memorie este deteriorat.
la System.Text.StringBuilder.AppendFormat (IFormatProvider furnizor, Șir format, Object [] args)
la Microsoft.Data.SqlRemoteBlobs.InformationUtilities.InformationDetails()
la Microsoft.Data.BlobStores.LogProvider.CreateHeaderInformation()
la Microsoft.Data.BlobStores.LogProvider.Initialize (LogLevel logLevel)
la Microsoft.Data.BlobStores.DebugPrint.InitializeProviders()
la Microsoft.Data.BlobStores.DebugPrint.Initialize (Boolean initializeProviders)
la Microsoft.Data.BlobStores.DebugPrint.WriteLine (operațiune OperationType LogLevel nivel, Int32 blobStoreId, excepție de excepție, String mesaj, Object [] argument)
la Microsoft.Data.SqlRemoteBlobs.Maintainer.Maintainer.MainInternal() la Microsoft.Data.SqlRemoteBlobs.Maintainer.Maintainer.Main (String [] args)
Cauză
Excepție prima se produce deoarece instrumentul responsabil este compilat utilizând .NET Framework 2.0. Instrumentul nu poate încărca asamblări bazate pe .NET Framework 4.0. violare acces excepție apare atunci când încercați să inițializeze furnizori de înregistrare în jurnal pentru Microsoft.Data.SqlRemoteBlobs.Maintainer.exe.
Rezoluţie
Remedierea pentru această problemă este disponibilă în cea mai recentă caracteristică pack descărcare pentru RBS.msi. Dacă ați utilizați soluția care se propune, puteți elimina sau activa înregistrarea în jurnal legate Tag-uri și ține eticheta supportRuntime .

Notă Reinstalați RBS utilizând RBS.msi noi pentru a aplica remedierea fără a aplica actualizarea.
Remediere
Pentru a rezolva această problemă, adăugați următoarea configurație suplimentare la fișierul de configurare împreună cu eticheta supportedRuntime . Aceste etichete dezactivați capacitatea de înregistrare în jurnal pentru instrumentul responsabil pentru ca fiind excepţiei în timpul inițializarea de furnizori de înregistrare în jurnal.
 <startup>            <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/> </startup>     <RemoteBlobStorage>        <Logging>            <add key="ConsoleLog" value="0" />            <add key="FileLog" value="0" />            <add key="CircularLog" value="0" />            <add key="EventViewerLog" value="0" />            <add key="DatabaseTableLog" value="0" />        </Logging>    </RemoteBlobStorage>
Stare
Microsoft a confirmat că aceasta este o problemă cu produsele Microsoft enumerate în secţiunea „Se aplică la".

Avertisment: acest articol a fost tradus automat

Proprietăți

ID articol: 2960310 - Ultima examinare: 11/10/2016 00:56:00 - Revizie: 7.0

Microsoft SQL Server 2012 Service Pack 1, Microsoft SQL Server 2014 Developer, Microsoft SQL Server 2014 Enterprise, Microsoft SQL Server 2014 Standard, Microsoft SQL Server 2012 Service Pack 2

  • kbqfe kbfix kbexpertiseadvanced kbmt KB2960310 KbMtro
Feedback
ementsByTagName("head")[0].appendChild(m);