2011-02-09 4 views
0

내 VS를 사용하여 웹 사이트를 로컬로 실행할 때 모든 것이 작동합니다.IIS에서 웹 사이트를 실행할 때 DLL을 찾을 수 없습니다.

나는 P/Invoke를 사용하여 DLL 내부에서 함수를 호출하고있다. DLL은 C++이며 작동합니다. 내가 IIS에 웹 사이트를 배포 할 때

, 나는 오류 메시지가

Unable to load DLL 'SolvingProbelm.dll': The specified module could not be found. (Exception from HRESULT: 0x8007007E) 

DLL이 bin 폴더 안에있는 구매하십시오. 앱 풀은 Classic 및 .net 2.0입니다.

제안 사항을 보내 주시면 감사하겠습니다.

감사합니다.

+0

어셈블리는'Path' 환경 변수에 나열된 폴더에 있어야합니까? – wsanville

+2

http://www.dependencywalker.com/을 사용하여 DLL의 종속성을 확인하십시오. –

+0

DLL 이름의 맞춤법 오류가 의도적입니까? 문제에 대한 자세한 정보를 수집하려면 dependencywalker (http://www.dependencywalker.com/)를 사용하여 dll에 해결되지 않은 종속성이 있는지 확인하십시오. –

답변

1

나는 한 번 비슷한 문제에 직면했다. SolvingProbelm.dllC:\WINDOWS\System32으로 복사하십시오. 바라기를, 그것은 작동 할 것이다! 그것은 내 상황에서 일했다. 실제로 네이티브 DLL과 .Net DLL은 다르게 검색됩니다. IIS는 C:\Windows\System32 폴더의 기본 DLL도 검색합니다. 거기에 DLL을 복사하면 문제가 해결됩니다!

+0

system32 폴더에 추가했지만 성공하지 못했습니다. – InfoLearner

관련 문제