Sümptomid
Oletagem, et kasutate kohandatud Remote BLOB Storage (RBS) pakkuja koos käitusaja .NET Framework 4,0, et talletada plekid eemalt Microsoft SharePoint 2013. Kui proovite käitada prügi cleanup, mida kasutab süsteemisiseselt Microsoft. Data. SqlRemoteBlobs. exe, kuvatakse prügi kogumisel järgmine tõrketeade:
Hallatavate tööülesannete käivitamine. Prügi kogumise alustamine. Algab viidete skannimine. <aeg>: ERR: 0::: AssemblyLoad::: laiendiga failid xxxx lugemisel ilmnes tõrge. RemoteBlobStoreProvider. dll. <aeg>: ERR: 0::: AssemblyLoad::: System. BadImageFormatException: see assembler on ehitatud käitusaja uuem kui praegu laaditud käitusaja ja seda ei saa laadida. (Erand HRESULT: 0x8013101B) <Time>: ERR: 0::: AssemblyLoad:: kell System. Reflection. Assembly. NLoadFile (stringi tee, tõendid tõendid) <aeg>: ERR: 0::: AssemblyLoad::: at System. Reflection. Assembly. LoadFile (string path) <aeg>: ERR: 0::: AssemblyLoad::: kell Microsoft. Data. SqlRemoteBlobs. ProviderClass. initsialiseerida ()
Hooldaja tööriist kompileeritakse .NET Framework 2,0 käitusaja abil ja see ei saa laadida komplekte, mille aluseks on .NET Framework 4,0 plekid ja prügi kogumine. Mis tahes .NET Frameworki rakenduse korral saate kasutada rakenduse konfiguratsioonifaili ja lisada supportedRuntime sildi, et kasutada .NET Frameworki uuemat versiooni. Haldaja komponendi konfiguratsioonifaili on Microsoft. Data. SqlRemoteBlobs. MaintainerConfig. XML, nagu järgmises näites:
<startup> <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/></startup>
Kui proovite käitada prügi cleanup, ilmneb Microsoft. Data. SqlRemoteBlobs. hooldaja. exe juurdepääsurikkumine järgmiselt.
System. AccessViolationException: proovisite lugeda või kirjutada kaitstud mälu. See on sageli märk sellest, et muu mälu on vigane. kell System. Text. StringBuilder. AppendFormat (IFormatProvider pakkuja, string Format, Object [] args) kell Microsoft. Data. SqlRemoteBlobs. InformationUtilities. InformationDetails () kell Microsoft. Data. BlobStores. LogProvider. CreateHeaderInformation () kell Microsoft. Data. BlobStores. LogProvider. initsialiseerida (LogLevel logLevel) kell Microsoft. Data. BlobStores. DebugPrint. InitializeProviders () Microsoft. Data. BlobStores. DebugPrint. initsialiseerida (Boolean initializeProviders) veebisaidil Microsoft. Data. BlobStores. DebugPrint. WriteLine (OperationType, LogLevel, Int32 blobStoreId, erandi erand, String sõnum, objekt [] ARG) aadressil Microsoft. Data. SqlRemoteBlobs. MainInternal. SqlRemoteBlobs. Office. args () aadressil Microsoft. Data.. hooldaja. hooldaja. Main (string [])
Põhjus
Esimene erand ilmneb seetõttu, et hooldaja tööriist on kompileeritud .NET Framework 2,0 abil. Tööriist ei saa laadida assemblereid, mis põhinevad .NET Framework 4,0. Juurdepääsurikkumine kui proovite lähtestada Microsoft. Data. SqlRemoteBlobs. Office. exe logimise pakkujad.
Lahendus
Selle probleemi lahendus on saadaval rakenduse RBS. msi jaoks uusimas funktsioonide paketis. Kui kasutate soovitatud lahendust, saate logimisega seotud sildid eemaldada või lubada ja supportRuntime silti hoida.Märkus. Saate RBSi uuesti installida, kasutades uut RBS. msi, rakendades paranduse, rakendamata värskendust.
Laadige alla Microsoft SQL server 2014 hoolduspakett Service Pack 1 (SP1) Feature Pack alla laadida microsoft SQL Server 2012 Service Pack 3 (SP3) Feature Pack
Lahendus
Selle probleemi lahendamiseks lisage konfiguratsioonifaili koos supportedRuntime sildiga järgmine täiendav konfiguratsioon. Need sildid keelavad kasutaja sisselogimise võimaluse, sest erandiks on logimise pakkujate lähtestamise ajal.
<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>
Olek
Microsoft on kinnitanud, et see probleem esineb jaotises "kehtib järgmiste toodete kohta" loetletud Microsofti toodetes.