Dzisiaj krótki wpis nt. wszystko mówiącego błędu, który może się pojawić, kiedy deployujemy aplikację napisaną w ASP.Net na IIS7, który chodzi na 64bitowej wersji systemu(być może problem występuje również na 32 bitach, ale mi się zdarzyło tylko w x64):
The specified module could not be found. (Exception from HRESULT: 0x8007007E)
Nie chcę tu wklejać całego Stack Trace'a, ale jeśli mieliście już do czynienia z tym błędem, to wiecie, że jest równie pomocny, co sama treść błędu(na zachętę fragment):
[FileNotFoundException: The specified module could not be found. (Exception from HRESULT: 0x8007007E)]
System.Reflection.Assembly._nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, Assembly locationHint, StackCrawlMark& stackMark, Boolean throwOnFileNotFound, Boolean forIntrospection) +0
System.Reflection.Assembly.nLoad(AssemblyName fileName, String codeBase, Evidence assemblySecurity, Assembly locationHint, StackCrawlMark& stackMark, Boolean throwOnFileNotFound, Boolean forIntrospection) +43
System.Reflection.Assembly.InternalLoad(AssemblyName assemblyRef, Evidence assemblySecurity, StackCrawlMark& stackMark, Boolean forIntrospection) +127
System.Reflection.Assembly.InternalLoad(String assemblyString, Evidence assemblySecurity, StackCrawlMark& stackMark, Boolean forIntrospection) +142
System.Reflection.Assembly.Load(String assemblyString) +28
System.Web.Configuration.CompilationSection.LoadAssemblyHelper(String assemblyName, Boolean starDirective) +46
No ok, czyli co z tym można zrobić? Odpowiedź brzmi:
należy skopiować plik MSVCR71.dll z innej maszyny(albo poszukać w sieci) do katalogów %windir%\System32 oraz %windir%\SysWOW64.
No jak można było się nie domyślić, prawda? :)