2011-01-05 2 views
23

IKVM을 사용하여 변환 된 Java 라이브러리를 사용하는 프로젝트가 있습니다. 내가 만든 DLL 플러스 내 프로젝트에 대한 참조로 모든 가능한 iKVM을 DLL을 추가,하지만 난 그것을 실행하면, 다음과 같은 런타임 오류 얻을 :"파일 또는 어셈블리를로드 할 수 없습니다"런타임 오류를 디버깅하는 방법?

System.IO.FileNotFoundException : Could not load file or assembly 'core, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null' or one of its dependencies. The system cannot find the file specified.

나는이 오류를 디버깅하는 방법을 정말 잘 모르겠어요합니다. 누락 된 유형을 정확히 알 수있는 방법이 있습니까? 설명에서 이것은 (자바 lib에서) 생성 된 DLL을 짐작 하겠지만 제대로 참조로 추가했습니다.

내가 뭘 잘못 했습니까?

+0

: 여기

은 문제 "파일 또는 어셈블리를로드 할 수 없습니다"디버깅 할 프로세스 모니터를 사용하는 방법에 대한 블로그 게시물입니다. 누락 된 .DLL은 IO 예외를 throw하지 않습니다. 더 많은 가능성이 있습니다. 일종의 파일 (구성 또는 무언가) .DLL 읽고 그것은 실종. 이 IKVM에 대한 설명서를 확인하십시오. –

+2

"assembly"태그는 어셈블리 언어 프로그래밍 용입니다. 나는 그것을 삭제했다, 당신이 꺼리지 않기를 바란다. – Jester

+0

좋은 생각이지만이 게시물에 가장 적합한 ikvm 태그를 추가하는 것을 잊어 버린 것 같아요.) –

답변

20

Fusion Log Viewer을 사용하여 .NET 응용 프로그램에서 어셈블리로드 문제를 디버깅 할 수 있습니다.

또한 Process Monitor은 일반적인 파일로드 문제를 식별하는 데 매우 유용합니다.

2

주어진 PE 파일 (dll, exe, ocx ...)의 종속성을 볼 수있는 Dependency Walker이라는 프로그램이 있습니다.

이 오류는 정말 귀찮고 디버깅하기가 어렵습니다. dll이 있는지 확인해야합니다. 이 종속성에는이 있습니다. 이 키포인트는 일반적으로 두통이 시작되는 곳입니다.

+7

종속성 워커는 네이티브 종속성을 해결합니다. 이것은 관리되는 종속성 문제와 같습니다. –

5

퓨전 로그 뷰어 (Microsoft SDK에서 사용 가능)를 사용하여 진단 할 수 있습니다. 관리자에서 실행하고 설정에서 로그를 활성화하십시오.

로드하는 모든 정보 (및 모든 참조 정보)를 기록합니다. 누락 된 참조 및 찾으려는 참조를 명시 적으로 알려줍니다.

MSDN on Fusion Log Viewer

0

사용 ProcessMonitor (시스 인 터널 스위트 룸에서) 당신이 어떤 볼 수있는 예외가 발생하기 전에 프로세스를 잘 찾고있는 DLL 수 있습니다.

6

종속성 워커 및 퓨전 로그 뷰어를 사용하면 네이티브 코드와 관리 코드가 함께 있거나 네이티브 코드를 동적으로로드하는 응용 프로그램에서 제대로 작동하지 않습니다.

Debug Could not load file or assembly or one of its dependencies error with Process Monitor

이 포스트는 또한으로이 작업의 일부를 자동화하는 도구가 포함되어 있습니다 : 여기에 그 시나리오를 다루고 처리하는 모니터를 사용 실종 해결하는 방법을 단계별로 (또는 무효 허가) 조립 오류를 설명하는 좋은 게시물입니다 well

0

종속성 워커는 네이티브 PE 파일에 필요한 모든 DLL을 정적으로 확인하고 누락 된 종속성을 플래그 지정하며, Fusion Log Viewer는 런타임 중에 관리 코드에서 어셈블리 바인딩 문제를 catch합니다. 네이티브 DLL을 동적으로로드하는 관리 .Net 코드의 경우 이러한 도구로는 충분하지 않습니다. 나는 대답을 제출하지 않도록 확실하지 않다으로 https://www.codeproject.com/Articles/560816/Troubleshooting-dependency-resolution-problems-usi

관련 문제