Resharper를 사용하여 decompiled dll로 디버깅하는 방법이 있습니까? 그렇다면 어떻게해야합니까?Resharper 제삼자 decompiled dll을 디버그
예를 들어 내가 디 컴파일하고 소스를 볼 수있는 System.Web.Http.ApiController
으로 디버깅하려고합니다.
중단 점을 설정했지만 디버깅 할 때 응용 프로그램을 실행할 때 디 컴파일 된 중단 점이 중단되지 않습니다.
Resharper를 사용하여 decompiled dll로 디버깅하는 방법이 있습니까? 그렇다면 어떻게해야합니까?Resharper 제삼자 decompiled dll을 디버그
예를 들어 내가 디 컴파일하고 소스를 볼 수있는 System.Web.Http.ApiController
으로 디버깅하려고합니다.
중단 점을 설정했지만 디버깅 할 때 응용 프로그램을 실행할 때 디 컴파일 된 중단 점이 중단되지 않습니다.
지금까지 내가
그러나, this article에서는 시각과 .NET 소스에 디버깅하는 방법에 대해 설명이 (V6.1까지) ReSharper에서를 사용하여 디 컴파일 .NET 소스 코드를 디버깅 할 수 없습니다 알고로 Studio 2010 - VS의 다른 버전에 대한 지침이 필요한 경우 페이지 상단의 '기타 버전'링크 만 사용하십시오.
dotPeek을 사용하여 DLL을 디 컴파일 한 다음 VS에서 심볼 서버를 설정할 수 있습니다. 이 기사보기 https://medium.com/jackspektor/not-just-my-code-how-to-debug-third-party-libraries-without-decompiling-them-8e47e706dbe7 –
해당 코드를 보려면 *.pdb
파일이 있어야합니다.
그렇지 않으면 바이너리 파일을 디 컴파일하는 것이 도움이 될 수 있습니다. Telerik은 무료로 사용할 수 있습니다 JustDecompile.
하지만 은 타사 공급자의 라이센스 계약을 위반할 수 있습니다.
아니요, Visual Studio 및 ReSharper만으로는 가능하지 않지만 다른 제품으로는 .NET Reflector이 있습니다.
VSPro 버전에는 .vdb 파일을 생성하고 이미 빌드 된 .NET 어셈블리의 소스 코드를 역 컴파일 할 수있는 "소스가없는 경우에도 Visual Studio 디버거를 사용하여 어셈블리 디버깅"기능이 있습니다.
경험상 일부 어셈블리에는 몇 가지 문제가 있지만 그 이유를 기억할 수 없어 도움이 될 수도 있고 도움이되지 않을 수도 있습니다.
ReSharper를 사용하면 리플렉터가 디 컴파일 된 소스를 생성하는 것과 거의 같은 방식으로 어셈블리에서 디 컴파일 된 소스 코드를 볼 수 있지만 ReSharper를 사용하여 소스 파일로 코드를 디버깅 할 수는 없습니다.
디버깅 기능은 dotPeek 1.2에 도입되었으며 여기서는 심볼 서버 및 dotPeek 1.2를 구성하여 Visual Studio에서 디 컴파일 된 코드를 디버깅하는 방법을 설명하는 멋진 게시물을 제공합니다 : http://blog.jetbrains.com/dotnet/2014/04/09/introducing-dotpeek-1-2-early-access-program.
예, Resharper 9.0을 사용할 수 있습니다 (이전 버전은 확실하지 않음). 이동은 "ReSharper에서 메뉴"> "윈도우"> "국회 탐색기"
그런 다음 바로에
클릭 (그것에 +로) 왼쪽의 첫 번째 버튼이 어셈블리를 추가 할 수
"Generate Pdb ..."(완료 될 때까지 기다리십시오)를 선택하십시오. 이제 코드를 분해 할 수 있습니다.
참고 그러나 옌스가 말한대로, 아마 휴식 라이센스 조건
나는 이것을 자세히 설명하는 블로그 게시물을 썼습니다 : http://blog.pglazkov.com/2016/02/how- to-debug-any-library-source-code.html –
이미 디버깅중인 경우 "디버그"> "Windows"> "모듈"로 이동하십시오. 디버깅 할 어셈블리를 선택하고 Resharper가 이전에 생성 한 "pdb"를로드하십시오. – polkduran
이 팁을 사용하려면 Visual Studio의 _Call Stack_ 창에서 스택 프레임의 상황에 맞는 메뉴에서 _Show External Code_를 선택해야합니다. – rgb
는 총회 탐색기 창에서 어셈블리를 선택하고 도구 모음에서 프로젝트 또는 상황에 맞는 메뉴 프로젝트 내보내기를 선택 내보내기를 클릭합니다.
선택을 취소 "내 코드 만 사용"옵션 : (- -> 옵션 -> 디버깅> 일반 도구)
더 많은 정보 또한 here
, 메인 디버깅 옵션 페이지에서이 구성을 확인
의 선택을 취소
는 "원본 서버 지원 사용"옵션
확인 옵션 "스테핑 .NET 프레임 워크 소스를 사용"원본 파일과 정확히 일치하도록 원본 파일 필요
모든 것을 시도한 후에,이 설정은 나를 위해 그것을했다, 고마워! –
Visual Studio 디버깅 옵션 (도구 -> 옵션 -> 디버깅 -> 일반)을 이미 살펴 보았습니까? 예 : * 내 코드 만 사용 (관리 전용) *을 해제해야합니다. – brgerner
ReSharper 6에는 자동 디 컴파일 기능이 있습니다. 아마도 디 컴파일 된 소스로 충분할 수 있습니다. –
brgerner