2016-02-18 27 views
6

Wystarczy zainstalować boczny VS2015 siebie z VS2010 ...Nie można załadować pliku lub zestawu stdole

Zastosowanie w numerze został zbudowany przy użyciu VS2010 (zestaw użyć .NET 4.0) (nie migrowały do ​​VS2015) działa dobrze na moim maszyna, umieścić go na serwerze i przewrócił się w kupie ... stdole była kwestia ...

w błędu systemu Windows Logs> Aplikacje nie był wyjątkiem:

Exception information: 
Exception type: ConfigurationErrorsException 
Exception message: Could not load file or assembly 'stdole, Version=7.0.3300.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. Strong name signature could not be verified. The assembly may have been tampered with, or it was delay signed but not fully signed with the correct private key. (Exception from HRESULT: 0x80131045) 
    at System.Web.Configuration.CompilationSection.LoadAssemblyHelper(String assemblyName, Boolean starDirective) 
    at System.Web.Configuration.CompilationSection.LoadAllAssembliesFromAppDomainBinDirectory() 
    at System.Web.Configuration.CompilationSection.LoadAssembly(AssemblyInfo ai) 
    at System.Web.Compilation.BuildManager.GetReferencedAssemblies(CompilationSection compConfig) 
    at System.Web.Compilation.BuildManager.GetPreStartInitMethodsFromReferencedAssemblies() 
    at System.Web.Compilation.BuildManager.CallPreStartInitMethods(String preStartInitListPath, Boolean& isRefAssemblyLoaded) 
    at System.Web.Compilation.BuildManager.ExecutePreAppStart() 
    at System.Web.Hosting.HostingEnvironment.Initialize(ApplicationManager appManager, IApplicationHost appHost, IConfigMapPathFactory configMapPathFactory, HostingEnvironmentParameters hostingParameters, PolicyLevel policyLevel, Exception appDomainCreationException) 

Could not load file or assembly 'stdole, Version=7.0.3300.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. Strong name signature could not be verified. The assembly may have been tampered with, or it was delay signed but not fully signed with the correct private key. (Exception from HRESULT: 0x80131045) 
    at System.Reflection.RuntimeAssembly._nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, RuntimeAssembly locationHint, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks) 
    at System.Reflection.RuntimeAssembly.nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, RuntimeAssembly locationHint, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks) 
    at  System.Reflection.RuntimeAssembly.InternalLoadAssemblyName(AssemblyName assemblyRef, Evidence assemblySecurity, RuntimeAssembly reqAssembly, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean throwOnFileNotFound, Boolean forIntrospection, Boolean suppressSecurityChecks) 
    at System.Reflection.RuntimeAssembly.InternalLoad(String assemblyString, Evidence assemblySecurity, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean forIntrospection) 
    at System.Reflection.RuntimeAssembly.InternalLoad(String assemblyString, Evidence assemblySecurity, StackCrawlMark& stackMark, Boolean forIntrospection) 
    at System.Reflection.Assembly.Load(String assemblyString) 
    at System.Web.Configuration.CompilationSection.LoadAssemblyHelper(String assemblyName, Boolean starDirective) 

Could not load file or assembly 'stdole' or one of its dependencies. Strong name signature could not be verified. The assembly may have been tampered with, or it was delay signed but not fully signed with the correct private key. (Exception from HRESULT: 0x80131045) 

Stack trace: at System.Web.Configuration.CompilationSection.LoadAssemblyHelper(String assemblyName, Boolean starDirective) 
    at System.Web.Configuration.CompilationSection.LoadAllAssembliesFromAppDomainBinDirectory() 
    at System.Web.Configuration.CompilationSection.LoadAssembly(AssemblyInfo ai) 
    at System.Web.Compilation.BuildManager.GetReferencedAssemblies(CompilationSection compConfig) 
    at System.Web.Compilation.BuildManager.GetPreStartInitMethodsFromReferencedAssemblies() 
    at System.Web.Compilation.BuildManager.CallPreStartInitMethods(String preStartInitListPath, Boolean& isRefAssemblyLoaded) 
    at System.Web.Compilation.BuildManager.ExecutePreAppStart() 
    at System.Web.Hosting.HostingEnvironment.Initialize(ApplicationManager appManager, IApplicationHost appHost, IConfigMapPathFactory configMapPathFactory, HostingEnvironmentParameters hostingParameters, PolicyLevel policyLevel, Exception appDomainCreationException) 

Wyglądał w odniesieniu do stdole i to było do GAC i do wersji: 2.0.0.0

Bitness nic się nie zmieniło.

Skąd ten błąd pochodzi?

+0

można spróbować usunąć odwołanie i sprawdzić, czy aplikacja nadal działa. – Thorarins

+0

@ Toryny Nie działało bez odwołania. –

+0

jakich internautów używasz? czy to Excel i Word? – Thorarins

Odpowiedz

5

wszelki wypadek ktoś napotka wydać w ten sam sposób co ja ...

To jak ja rozwiązany:

Usunięto istniejący odniesienie do stdole, następnie dodaje odniesienie> Rozszerzenia> były cztery wpisy dla stdole! jedna z ikoną biurową, jedna z ikoną VS, jedna z trybem cog (ikona konfiguracji) i inna bez ikony (wszystkie cztery były dokładnie tymi samymi numerami wersji itp.) ...

Dodano odniesienie do tego z VS ikonę i wdrożony do serwera ... wszystko idzie dobrze (drewno dotykowy)

0

Możesz chcieć sprawdzić, dlaczego biblioteka Stdole (lub jedna z jej zależności) została zmodyfikowana.

W tym czasie uruchom komendę sn -Vr * w wierszu polecenia, aby wyłączyć sprawdzanie integralności na komputerze lokalnym.

+0

Rzeczywiście, podejrzewam, że instalowanie VS2015 równolegle z VS2010 i towarzyszącymi im frameworkami .Net spowodowało ten problem. –

1

Dodaj odwołanie w projekcie do „stdole.dll”, który można znaleźć w kilku różnych miejscach

  • Twój GAC (C: \ Windows \ assembly)
  • C: \ Program Files (x86) \ Pliki wspólne \ Microsoft Shared \ MSEnv \ PublicAssembli es

Przebuduj, prześlij ponownie i wszystko powinno być dobre.

Powiązane problemy