CliPeViewer 是一款 WinForms 工具,專為檢視 .NET 組件(Managed PE)內部結構設計。不同於通用 PE 檢視器,它強調「原汁原味」呈現:每個結構、每個欄位除顯示解析值外,同步顯示檔案偏移量與原始位元組,適合深入研究 CLI 元資料格式。
開發歷程
- 2005 年起研究 PE/IL,嘗試開發原型。
- 2006-2007 年間斷續開發,歷經 10+ 專案重構、5-6 次改名。
- 2008 年發現 ECMA-335 元資料結構自 .NET 2.0 以來穩定未變,決定完善當前版本。
- C# 4.0 新特性皆建立於 .NET 2.0 元資料基礎,驗證架構壽命。
目前功能與缺口
已實作
- PE 標頭、Section Table、CLI Header 解析顯示。
- 元資料表(TypeDef、MethodDef、FieldDef 等)結構化瀏覽。
- 每欄位顯示:名稱、值、檔案偏移、原始位元組十六進制。
待完成
- IL 指令反組譯顯示。
- 方法定義細節(方法頭、例外處理區塊)。
- 元資料簽名解析(Blob、TypeSpec、MethodSpec 等)。
後續規劃
- 產出通用 XML 描述 PE 結構,支援代碼生成器自動產出結構定義類別。
- 將核心解析邏輯封裝為
AndersLiu.CliPe.dll 供第三方整合。
- 撰寫系列文章介紹 PE/CLI 檔案格式細節。
介面截圖

下載
CliPeViewer.zip(含原始碼可用 Reflector 反編譯檢視)