최상의 답변
예, .exe 파일을 디 컴파일하고 내가 아는 세 가지 방법으로 소스 코드를 얻을 수 있습니다. (다른 방법으로도 가능합니다.))
다음은 Windows 애플리케이션을 디 컴파일하는 단계별 방법입니다.
- Telerik의 JustDecompile . 디 컴파일 할 수있는 자유 소프트웨어이지만이 소프트웨어를 사용하면 많은 오류가 발생했습니다. VS 프로젝트도 만들 수 있습니다. 🙂
- ILSpy는 icsharpcode / ILSpy 에서 찾을 수 있습니다.
- .NET Decompiler 및 추가 기능 FileDisassembler , 이전에는 무료 버전 이었지만 더 이상 무료가 아닙니다. 그러나 .NET Decompiler : Decompile Any .NET Code에있는 소프트웨어 평가판을 사용해 볼 수 있습니다. (매력처럼 작동합니다!)
JustDecompile을 사용하는 경우 소프트웨어에서 직접 .exe 파일을 엽니 다. 완전한 소스 코드를 보여줍니다. VS 프로젝트를 만들 수도 있습니다 (도구 선택-> 프로젝트 만들기 옵션).
도움이 되었기를 바랍니다.
건배,
답변
할 수 있습니다. 디 컴파일이라고하며 바이트 시퀀스를 어셈블리 언어 명령어로 해석 한 다음 인식 가능한 각 어셈블리 명령어 집합에 대해 정품 언어로 대체하여 고급 언어로 코드를 반환하는 디 어셈블 링으로 시작합니다. .
그러나 결과는 원본 소스 코드와 같지 않을 것입니다. 모든 이름과 디자인은 완전히 난독 화되어 의도적 인 난독 화자가 달성 할 수있는 수준과 거의 동일합니다.
이것은 비교적 끔찍한 결과를 생성하는 자동코드 이식의 아주 오래된 방법입니다. 코드는 사람이 읽을 수 없으며 집중적으로 최적화하더라도 다소 덜 효율적인 기계 코드로 다시 컴파일됩니다. 개별 어셈블리 블록을 대체하는 언어 구조는 일반적으로 에뮬레이트하는 실제 어셈블리 명령어보다 의미가 약간 더 일반적이기 때문입니다. , 다른 시스템에서 사용할 수있는 작업이 반드시 직접 매핑되는 것은 아닙니다.