2008-10-18 167 views
16

在我的Java開發中,我從Jad/JadClipse反編譯器中受益匪淺。它使得知道爲什麼第三方庫失敗而不是通常的猜測。C#與Visual Studio集成的最佳(免費?)反編譯器?

我正在爲C#和Visual Studio尋找類似的設置。也就是說,我可以指向我的代碼中的任何類或變量並獲取該特定類的代碼視圖的設置。

什麼是最好的設置?我希望能夠使用通常的「跳轉到聲明/實現」來導航我自己的代碼。它不是免費的,但它會是一個獎金,如果它是。

它應該支持Visual   Studio   2008或Visual   Studio   2005和.NET 2和3(.5)。

回答

13

這是一篇關於Reflector and how to integrate Reflector into Visual Studio的好文章。

特別感興趣的是Reflector.VisualStudio加載項。這個由Jaime Cansdale創建的 加載項允許在Visual Studio中託管 反射器。有了這個加載項,您可以在Visual Studio環境中集成Reflector 。

要啓動 ,您需要在您的 機器上安裝最新版本的Reflector。下載反射器後,請從 http://www.testdriven.NET/reflector下載最新的 版Reflector.VisualStudio插件。下載包含一些 文件,需要將其放在與Reflector.exe相同的目錄中。 要安裝加載項,下降到命令行並運行:加載項已安裝

Reflector.VisualStudio.exe /install 

後,你就可以開始使用反射從Visual Studio。你會注意到一個新的菜單項Addins,它有一個名爲Reflector的 菜單選項。此選項在選中時顯示反射器窗口,該窗口可以停靠在IDE中。此外, 加載項提供上下文菜單支持。

當您在Visual Studio中的打開代碼文件中右鍵單擊 時,您會看到一個反射器菜單 項目,該項目展開到子菜單中,其中可以選擇將代碼 反彙編到C#或Visual Basic中,顯示調用圖或被調用者圖表和 其他相關選項。上下文菜單還包括一個Reflector菜單項的Synchronize ,單擊該菜單項時,將Reflector窗口中的對象瀏覽器樹 與當前代碼文件同步。

+14

這已不再是免費爲2011年3月10日。 – KevinH 2011-03-22 12:45:51

+2

不再免費! – Tarion 2012-03-17 13:46:09

1

我不認爲它可以與Visual Studio集成,但Reflector可以將.NET程序集分解爲許多.NET語言或顯示IL。

1

Remotesoft的Salamander .NET decompiler沒有在Visual Studio集成,但它可以生成,便於重新編譯Visual Studio .NET項目文件。這不是免費的。

1

只需使用bin文件夾中的DLL/EXE上的「Open with」並選擇Reflector(並將其設置爲默認值),即可將.NET Reflector附加到Visual Studio。另外,許多工具(如我記得的TestDriven.NET,可能還有ReSharper)提供了.NET Reflector集成級別。

4

Scout plugin將Reflector與ReSharper集成,如果您碰巧使用該工具。

2

我覺得dotPeek是最好的免費工具對於反編譯的C#代碼和裝配