asp.net - unable to load dll error shown for one website and not the other copied website, both hosted on same IIS 7.0 -
i have 3rd party dll when used in local vs working without issues. 3rd party dll came 32bit , 64 bit dll installation files. ran 64bit installer , system32 folder had dll required. local project had no trouble calling these dll's.
when tried same step host website on iis 7.0 on 64bit windows 2012 r2 testing server, getting following error : unable load dll '3rdparty.dll': specified module not found. (exception hresult: 0x8007007e)
to fix tried uninstalling 64bit , installed 32 bit dll's , syswow64 had dll's required , no error received.
i checked if system32 had dlls there none , syswow64 had dll's. can 1 tell me why 32 bit dll's worked on server , 64bit on local ?
also when trying on different machines found 32 bit installer worked on 64 bit had issues on machines.
adding strangeness, when hosted copy of same website on different folder under same application pool of iis 7.0 on testing server. received error on 1 website while other had no issue loading dll's required. both these website had same in terms of iis user used, access rights difference under different folder structure.
also there way of referencing 3rd party dll use particular path rather trusting system32 , syswow64 folders in website projects.
as mentioned cyril used procmon track asp.net website looking 3rd party dll. on checking found 3rd party dll being looked @ syswow64 folder rather on anticipated folder system32. happening because website before copying compiled on 32 bit version , hence copied version looking 32 bit , not 64 bit. making behave differently. need understand how .net compiler decide use version bottom of confusion have.
following question helped: dll in both bin , gac, 1 gets used?
Comments
Post a Comment