dotPeek의 새로운 기능

이 페이지에서는 dotPeek의 최신 버전에서 변경된 사항을 소개합니다.

dotPeek 다운로드

라이선스 키가 필요 없으며 무료입니다

새로운 전용 Assembly Diff(어셈블리 Diff) 도구 창

새로운 전용 Assembly Diff(어셈블리 Diff) 도구 창 2024.1

2024.1 업데이트에는 dotPeek에 새로운 Assembly Diff(어셈블리 Diff) 도구 창이 도입되었으며 이와 함께 몇 가지가 변경되었습니다.

  • 어셈블리, NuGet 패키지, 폴더 및 .zip 아카이브를 비교하는 기능이 Assembly Explorer(어셈블리 탐색기)에서 Assembly Diff 도구 창으로 이동되었습니다.
  • Diff mode(Diff 모드) 선택자와 Compare(비교)Diff Options(Diff 옵션) 버튼이 Assembly Diff 도구 창의 Actions(액션) 표시줄로 재배치되었습니다.
WebCIL 패키징 형식 지원

WebCIL 패키징 형식 지원 2024.1

dotPeek은 이제 WebAssemblies용 WebCIL 패키징 형식을 지원합니다. 지원 내용은 다음과 같습니다.

  • WebCIL 디컴파일링
  • Assembly Explorer(어셈블리 탐색기)에서 .wasm 파일 확인
  • WASM 및 WebCIL 헤더를 포함하여 Assembly Explorer에 있는 WASM 노드의 메타데이터 하위 트리
더 많은 C# 언어 기능

어셈블리 Diff 개선 2023.3

dotPeek 2023.3은 NuGet 패키지, 폴더 및 .zip 파일을 비교할 수 있습니다.

이제 어셈블리 비교 기능에 더 많은 비교 옵션이 생겼습니다. 여러 Diff 모드(Show all(모두 표시), Show only differences(차이만 표시), Show only signature differences(시그니처 차이만 표시), Show only public API differences(공개 API 차이만 표시)) 중에서 선택할 수 있습니다. 또한 Diff에서 멤버/속성 순서 차이와 null 가능 참조 타입 어노테이션의 차이를 무시하도록 지정할 수 있습니다.

더 많은 C# 언어 기능

어셈블리 탐색기 업데이트 2023.3

  • 이제 Assembly Explorer(어셈블리 탐색기)에서 NuGet 패키지를 탐색할 때 해당 NuGet 패키지 내에 포함된 모든 파일과 폴더를 볼 수 있습니다.
  • 크기와 유형(파악 가능한 경우)을 포함한 Win32 리소스 노드를 이제 노드 표시 트리와 Properties(프로퍼티) 패널에서 볼 수 있습니다.

기타 업데이트 2023.3

  • 이제 Win32 문자열 테이블 리소스를 디코딩하는 기능이 도입되었습니다.
  • 이제 dotPeek은 어셈블리/비 어셈블리, 번들 내의 파일, 아카이브, NuGet 패키지, 비교된 어셈블리 및 Win32 리소스와 관련하여 Properties(프로퍼티) 패널 내에 열린 파일의 크기를 표시합니다.
  • 이제 어셈블리 인증코드 시그니처 유효성 검사를 사용할 수 있습니다.
  • 명시적인 #nullable disable 지시문은 디컴파일링된 소스에 표시됩니다.
더 많은 C# 언어 기능

어셈블리 Diff 2023.2

dotPeek 2023.2에서는 두 어셈블리를 자세히 비교할 수 있습니다. 이 기능은 특정 어셈블리의 두 버전 간의 차이점을 면밀히 조사하고 최신 버전에 도입되었을 수 있는 잠재적 취약성을 찾아낼 때 특히 유용합니다.

자세한 내용을 보려면 여기를 클릭하세요.

IL Viewer(IL 뷰어) 도구 창 2023.1

dotPeek 2023.1 버전에는 IL Viewer(IL 뷰어) 도구 창에 대한 다음과 같은 개선 사항이 포함되어 있습니다.

  • 이제 지역 변수 이름이 하위 수준상위 수준 C# 코드 모두에 사용되고 변수 튜플 요소 이름이 원래 소스에서와 같이 상위 수준 C# 코드에 사용됩니다.
  • 주석 추가된 튜플 요소 이름은 중간 언어(IL) 코드의 지역 변수 선언을 위해 PDB/디컴파일러에서 렌더링됩니다.
  • 필드 및 프로퍼티 이니셜라이저, 반복자 내부의 구문, async 메서드, 람다, 지역 함수, 그리고 상위 수준 C#에 대한 지역 함수 및 중첩된 지역 함수 선언에 대한 동기화가 개선되었습니다.
더 많은 C# 언어 기능

더 많은 C# 언어 기능 2022.3

dotPeek 2022.3은 다음을 지원합니다.

  • 인터페이스의 static abstractstatic virtual 멤버.
  • 제네릭 속성.
  • 사용자 정의 checked 연산자.
  • 부호 없는 오른쪽 시프트 연산자.
IL 뷰어의 상위 수준 및 하위 수준 C# 코드

IL Viewer(IL 뷰어)의 상위 수준 및 하위 수준 C# 코드 2022.2

이제 IL Viewer(IL 뷰어) 도구 창에서 디컴파일된 상위 수준 및 하위 수준 C# 코드를 볼 수 있는 옵션이 있습니다. 디컴파일된 코드는 여전히 코드 에디터의 소스 코드와 동기화됩니다.

어셈블리 탐색기의 ReadyToRun 및 NGen 어셈블리 지원

Assembly Explorer(어셈블리 탐색기)의 ReadyToRun 및 NGen 어셈블리 2022.2

  • ReadyToRun(R2R) 및 NGen 어셈블리가 Assembly Explorer(어셈블리 탐색기)에 표시되는 방식이 개선되었습니다. 이제 작은 프로세서 기호 아이콘과 ngen 또는 R2R 라벨이 각 어셈블리 이름 옆에 표시됩니다.
  • Metadata(메타데이터) 트리에 ReadyToRun 헤더가 있습니다.
  • Properties(프로퍼티) 창에는 ReadyToRun 섹션이 있습니다.
미리보기 탭

미리보기 탭 2022.1

Visual Studio에서 사용하던 것처럼 단일 미리보기 탭에 파일을 표시하는 기능을 도입했습니다. 특정 항목을 찾으려고 하고 이러한 파일을 별도의 탭으로 열어두고 싶지 않을 때 도움이 됩니다.

파일을 별도의 탭에 두려면 미리보기 탭에서 Keep open(열린 상태로 유지) 아이콘을 클릭하세요. Preview(미리보기) 탭을 비활성화하려면 Tools(도구) | Options(옵션) | Tabs(탭)으로 이동하고 Allow new files to be opened in the preview tab(미리보기 탭에서 새 파일을 열도록 허용)을 선택합니다.

텍스트 에디터 내의 빠른 찾기 창

텍스트 에디터 내의 빠른 찾기 창 2022.1

Quick Find(빠른 찾기) 기능을 별도의 도구 창에서 텍스트 에디터 탭으로 이동했습니다. 이제 파일에 대해 Quick Find(Ctrl+F)를 호출하면 파일의 텍스트 에디터 탭 내부에 Quick Find 패널이 나타납니다.

또한 F3Shift+F3 단축키가 추가되어, 검색 시 Quick Find 패널을 사용하면 다음 또는 이전 항목으로 빠르게 이동할 수 있습니다.

XML 문서 주석

XML 문서 주석 2022.1

dotPeek에서 XML 문서 파일과 이름이 다른 어셈블리(예: System.Private.CoreLib)를 포함하여 플랫폼 어셈블리에 대한 XML 문서 주석이 표시됩니다. XML 문서의 경로가 이제 디컴파일된 파일의 헤더에 표시됩니다.

어셈블리 탐색기 업데이트 2022.1

어셈블리 탐색기가 이제 전달된 타입(TypeForwardedTo 속성)을 지원합니다. Locate in Metadata(메타데이터에서 찾기) 액션은 전달된 타입, 어셈블리 및 모듈 참조, 그리고 리소스에도 작동합니다.

기타 업데이트 2022.1

  • Metadata(메타데이터) 뷰에서 탐색 대상 변경을 해제했습니다.
  • BLOB 노드의 프로퍼티에 디코딩된/원시 BLOB 프레젠테이션을 추가했습니다.
  • 인터페이스 및 열거형과 같이 시퀀스 포인트가 없는 타입에 대한 PDB 탐색을 개선했습니다.
단일 파일 애플리케이션 지원

레코드 및 레코드 구조체 지원 2021.3

dotPeek은 레코드 및 레코드 구조체 타입에 대한 조기 지원을 제공합니다. 레코드, 레코드 구조체 및 구조체에 대한 with 표현식도 지원합니다.

이 릴리스에 포함된 다른 C# 기능과 관련하여 디컴파일러는 이제 비동기 삭제(await using)를 지원합니다.

단일 파일 앱에 대한 지원 확대

단일 파일 앱 지원 확대 2021.3

단일 파일 앱 읽기 및 디컴파일에 대한 지원을 계속 개선하고 있습니다.

  • 번들로 포함된 .json 파일(예: .runtimeconfig.json 파일)의 내용을 볼 수 있습니다.
  • Assembly Explorer(어셈블리 탐색기)에서 루트 노드를 클릭하면 단일 파일 앱에 대한 일부 기술 정보(헤더 형식 버전ID)와 함께 포함된 모든 파일 목록을 볼 수 있습니다.
  • 모든 파일을 폴더로 추출하거나(컨텍스트 메뉴에서 Extract Bundle Content to Folder(번들 내용을 폴더로 추출) 액션 사용) 번들에서 하나의 특정 파일을 외부 파일로서 추출할 수 있습니다(컨텍스트 메뉴에서 Extract to File(파일로 추출) 액션 사용).
단일 파일 애플리케이션 지원

단일 파일 애플리케이션 지원 2021.2

Now dotPeek can decompile single-file apps. 또한 평소와 마찬가지로 단일 파일 앱 내에서 번들로 제공되는 어셈블리를 탐색할 수도 있습니다. .NET Core 3.1, .NET 5 및 곧 출시될 .NET 6 SDK의 단일 파일 형식이 지원됩니다.

탭 관리

탭 관리 2021.1

한 번에 여러 탭으로 작업할 때 이제 탭을 고정할 수 있습니다. 또한 탭의 색상이 표시되는 코드 유형을 나타냅니다. 즉, 녹색은 메타데이터 뷰를 나타내고 갈색은 심볼 파일의 소스를 나타냅니다. 탭을 고정하고 색상 코드를 지정하는 옵션은 Tools(도구) | Options(옵션) | Environment(환경) | Tabs(탭)에서 해제할 수 있습니다.

코드 스타일 및 코드 서식 지정

코드 스타일 및 서식 지정 2021.1

코드 표시 방식을 제어하는 옵션 모음을 도입하여 디컴파일된 코드의 서식 지정 도구를 업데이트했습니다. 이제 들여쓰기 스타일과 크기를 설정하고, 여는 중괄호를 새 줄에 배치할지 여부, 그리고 표현식 본문 멤버를 사용할지 여부를 선택할 수 있습니다. 이러한 메뉴는 Tools(도구) | Options(옵션) | Decompiler(디컴파일러) | Code style and formatting(코드 스타일 및 서식 지정)에서 찾을 수 있습니다.

dotPeek 다운로드

라이선스 키가 필요 없으며 무료입니다