업데이트로 돌아가기
New releaseJul 15, 2026

ILSpy v10.1.1

.NET 디컴파일러, PDB 생성 지원, ReadyToRun, 메타데이터(및 기타) - 크로스 플랫폼!

공유

ILSpy NuGet Build ILSpy Mastodon Bluesky ILSpy VS extension

ILSpy는 오픈 소스 크로스 플랫폼 .NET 어셈블리 브라우저이자 디컴파일러입니다. 데스크톱 UI는 Windows, Linux, macOS에서 실행됩니다(Avalonia 기반으로 구축됨).

다운로드: 최신 릴리스 | 최신 CI 빌드 (master) | Microsoft Store (RTM 버전 전용)

디컴파일러 프런트엔드

크로스 플랫폼 데스크톱 UI인 ILSpy(Releases를 통해 다운로드 가능, 플러그인도 참고) 외에도 다음과 같은 다른 프런트엔드가 제공됩니다:

기능

  • C#으로의 디컴파일 (언어 지원 현황 확인)
  • 전체 프로젝트 디컴파일
  • NuGet 피드에서 열기, 디스크 및 GAC(Windows 전용) 외에도 실행 중인 프로세스에서 열기
  • 타입/메서드/속성 검색 (옵션 알아보기)
  • 하이퍼링크 기반 타입/메서드/속성 탐색, 북마크
  • 기본/파생 타입 탐색, 기록
  • 어셈블리 메타데이터 탐색기 (기능 둘러보기)
  • BAML에서 XAML로의 디컴파일러, !AvaloniaResources 지원
  • .NET Core용 ReadyToRun 바이너리 지원 (튜토리얼 참고)
  • 플러그인을 통한 확장 가능
  • DEBUG 빌드의 추가 기능 (개발자용)

라이선스

ILSpy는 MIT 라이선스에 따라 배포됩니다. 자세한 내용은 About 문서와 포함된 오픈 소스 라이브러리에 대한 제3자 고지를 참조하세요.

빌드 방법

Windows:

  • PowerShell 7 이상이 설치되어 있는지 확인하세요 (Windows PowerShell 5.0 이상도 작동합니다).
  • git을 사용하여 ILSpy 저장소를 복제합니다.
  • git submodule update --init --recursive를 실행하여 ILSpy-Tests 서브모듈을 다운로드합니다 (일부 테스트 케이스에서 사용됨).
  • Visual Studio를 설치합니다 (문서화된 버전: 18.0/2026). 다음 워크로드 구성 요소가 필요합니다:
    • 워크로드 ".NET 데스크톱 개발". 이 워크로드에는 .NET Framework 4.8 SDK와 .NET Framework 4.7.2 대상 팩, 그리고 .NET 10.0 SDK가 포함됩니다 (ILSpy.csproj는 .NET 10.0을 대상으로 하지만 net472 프로젝트도 있습니다). 단위 테스트에는 .NET 11.0 SDK가 필요합니다.
    • 워크로드 "Visual Studio 확장 개발" (참고: ILSpy.VSExtensions.slnx는 ILSpy.slnx와 별개이므로 이 워크로드는 선택 사항입니다)
    • 개별 구성 요소 "MSVC v143 - VS 2022 C++ x64/x86 빌드 도구" (또는 유사한 항목)
      • VC++ 도구 집합은 선택 사항입니다; 존재하는 경우 editbin.exe를 사용하여 ILSpy.exe가 사용하는 스택 크기를 1MB에서 16MB로 수정하는 데 사용됩니다. 디컴파일러는 재귀를 많이 사용하며, 스택 크기가 작으면 매우 복잡한 메서드에서 문제가 발생하기 때문입니다.
  • Visual Studio에서 ILSpy.slnx를 엽니다.
    • NuGet 패키지 복원이 추가 종속성을 자동으로 다운로드합니다
    • ILSpy UI를 실행하려면 "ILSpy" 프로젝트를 실행합니다
    • Visual Studio "테스트 탐색기"를 사용하여 테스트를 확인/실행합니다
    • ILSpy의 특정 하위 집합에만 관심이 있는 경우 다음을 사용할 수도 있습니다
      • ILSpy.Desktop.slnf: 크로스 플랫폼 Avalonia UI 및 해당 테스트용
      • ILSpy.XPlat.slnf: 크로스 플랫폼 CLI(ilspycmd) 또는 PowerShell cmdlet용
      • ILSpy.VSExtensions.slnx: Visual Studio 확장용

참고: Visual Studio에는 Visual Studio 설치 관리자가 관리하는 .NET SDK 버전이 포함되어 있으며, 업데이트하면 해당 SDK도 업그레이드될 수 있습니다. ILSpy는 .NET 11.0 SDK와만 호환되며, Visual Studio는 솔루션의 일부 프로젝트를 로드하지 못할 수 있습니다 (그리고 단위 테스트도 실패합니다). 이 문제가 발생하면 여기에서 .NET 11.0 SDK를 수동으로 설치하세요.

Unix / Mac:

  • .NET 10.0 SDK(실행용)와 .NET 11.0 SDK(테스트용)가 설치되어 있는지 확인하세요. 더 나은 방법은 SDK 채널 preview와 함께 dotnetup을 사용하는 것입니다.
  • PowerShell이 설치되어 있는지 확인하세요 (이전 명칭 PowerShell Core)
  • git을 사용하여 저장소를 복제합니다.
  • git submodule update --init --recursive를 실행하여 ILSpy-Tests 서브모듈을 다운로드합니다 (일부 테스트 케이스에서 사용됨).
  • dotnet build ILSpy.Desktop.slnf를 사용하여 크로스 플랫폼 Avalonia 데스크톱 UI를 빌드하고, dotnet run --project ILSpy로 실행합니다.
  • dotnet build ILSpy.XPlat.slnf를 사용하여 CLI 도구(ilspycmd)와 PowerShell cmdlet만 빌드합니다.

Visual Studio Code 또는 그 파생 제품과 함께 DotRush를 사용하는 것을 권장하며, DotRush는 VS Code 파생 제품에서도 사용할 수 있습니다.

기여 방법

  • 버그를 보고하세요
  • 풀 리퀘스트를 기여하려면 잘못된 형식의 코드가 체크인되는 것을 방지하기 위해 https://github.com/icsharpcode/ILSpy/blob/master/BuildTools/pre-commit 을 .git/hooks에 추가하세요. 우리는 공백이 아닌 탭을 사용합니다. 빌드 서버에서도 동일한 스크립트를 실행하므로, 잘못된 형식을 사용하는 풀 리퀘스트는 실패합니다.

현재 및 과거 기여자.

ILSpy 개인정보 처리방침

ILSpy는 개인 식별 정보를 수집하지 않으며, 사용자 파일을 제3자 서비스로 전송하지 않습니다. ILSpy는 텔레메트리나 메트릭을 수집하기 위해 APM(애플리케이션 성능 관리) 서비스를 사용하지 않습니다.

카테고리