Qualcosa di meglio di .NET Reflector? [chiuso]


365

In passato amavo .NET Reflector, ma da quando Red Gate Software ha preso il controllo è diminuito drasticamente. Ora mi costringe ad aggiornare (il che è assolutamente ridicolo), la metà delle volte l'aggiornamento non procede senza intoppi e ostacola sempre di più la mia produttività con ogni aggiornamento. Sono stufo di questo, e sono pronto per qualcosa di meglio. Esiste un disassemblatore migliore?


Aggiornare:

Elenco di varie alternative citate nelle risposte -


5
Il problema principale: ogni volta che ho bisogno di usarlo per uscire da un ingorgo, deve aggiornamento!
Josh Stodola,

152
+1, Reflector ha fatto tutto il necessario 3 anni fa. Ad oggi è l'unico programma che abbia mai usato che si disabilita se non lo lascio aggiornare quando lo desidera. Redgate ha preso un ottimo software e l'ha rovinato. Potrebbe anche essere gratuito, ma grazie a questo atteggiamento odioso Redgate ha assicurato che non comprerò o raccomanderò di nuovo nessuno dei loro software.
Ash

15
Sembra che questo argomento abbia appena guadagnato una nuova vita, ora che RedGate sta chiedendo un minimo di $ 35 per quella che era la versione gratuita di Reflector. Giornata triste ... giornata davvero triste. Speriamo che la comunità .NET possa trovare un concorrente FOSS di qualità e permetterci di allontanarci dal tradimento subdolo (non molto sorprendente) di RedGate.
jrista,

6
+1 - Red Gate ha promesso di non rovinarlo, ma sembra che lo abbiano fatto. Non lo eseguo molto e quindi devo aggiornarlo ogni volta che lo faccio. Ma questo non mi dice: chiede solo se dovrebbe aggiornarsi automaticamente. Quando dico "No", sembra non fare nulla. Quando dico "Sì", scarica e decomprime qualcosa e quindi genera un errore a cui non è possibile accedere a Reflector.exe perché è in uso!
Jonathan Wood,

71
Ad essere onesti, non possiamo dire che Red Gate non abbia lavorato sul software. Sto usando la versione a pagamento e noto che hanno lavorato molto per renderlo molto più lento di prima.
Ryan Lundy,

Risposte:


169

Dai un'occhiata anche a ILSpy di SharpDevelop . È nelle prime fasi di sviluppo e hanno appena rilasciato il 24 febbraio. Questo di per sé funziona abbastanza bene per me. Dal loro sito Web:

ILSpy è il browser e decompilatore di assembly .NET open source.

Lo sviluppo è iniziato dopo che Red Gate ha annunciato che la versione gratuita di .NET Reflector avrebbe cessato di esistere entro la fine di febbraio 2011.

Aggiornamento : JetBrains ha rilasciato dotPeek, il suo decompilatore .NET gratuito .

Aggiornamento 2 : Telerik ha anche un decompilatore gratuito: JustDecompile .


2
L'ho appena provato. Ha funzionato come un fascino. Ottieni i binari su build.sharpdevelop.net/BuildArtefacts/#ILSpy
StriplingWarrior il

3
ILSpy FTW. Fa tutto ciò di cui ho mai avuto bisogno per Reflector e lo fa senza timebomb o aggiornamento automatico a una nuova versione che funziona peggio della versione precedente.
Ian Kemp,

2
ILSpy è decisamente alla pari con Reflector. dotPeek impiega più tempo a caricarsi e la dimensione del download è un po 'alta. E usa gli spazi per il rientro invece delle schede (e non c'è alcuna opzione di configurazione per cambiare)! : D +1
James Skemp,

1
L'oro va a ILSpy, l'argento è per dotPeek e il bronzo è per JustDecompile.
oddy

2
RedGate mi ha deluso con aumenti dei prezzi piuttosto importanti e nessuna opzione paypal. La prima volta che ho visto sono stati £ 20 per la versione base. Ora è £ 65 e più del doppio per l'integrazione VS.
Richard Griffiths,

62

JetBrains aggiungerà un decompilatore al suo ReSharper e rilascerà anche un decompilatore autonomo.

La buona notizia è che stiamo preparando un'applicazione binaria come sorgente, ovvero un decompilatore + un browser di assemblaggio per esplorare qualunque codice compilato .NET sia legale da esplorare. Non abbiamo una data specifica per il rilascio, ma uscirà quest'anno e sarà gratuito. E dicendo "libero", in realtà intendiamo "libero".

Ecco maggiori informazioni.

AGGIORNAMENTO: JetBrains ha ora rilasciato il prodotto chiamato dotPeek e può essere trovato qui .


2
Ho appena dato un vortice a ReSharper 6 EAP (rilasciato il 1 marzo 2011). La decompilazione è lì, funziona benissimo ed è ESTREMAMENTE conveniente poiché è integrata direttamente in VS2010. Sembra che stia arrivando una versione GRATUITA stand-alone, ma per quelli di voi che usano già ReSharper, v6 aggiunge sicuramente la decompilazione che funziona alla grande!
jrista

2
Aggiornamento: il decompilatore standalone gratuito di JetBrains chiamato dotPeek è stato rilasciato per l'accesso anticipato.
Jura Gorohovsky,

31

A mio avviso, ci sono tre serie alternative da tenere d'occhio, tutte gratuite :

  • ILSpy : Questo proviene dalle stesse persone che creano l'IDE (anche gratuito) SharpDevelop. Oltre ad essere gratuito, è anche open source. Un'estensione aggiuntiva su cui stanno lavorando è la possibilità di eseguire il debug del codice decompilato (cosa che la versione pro di Reflector può fare), che funziona sorprendentemente bene.
  • JustDecompile : un decompilatore autonomo di Telerik (annunciato oggi, attualmente in beta).
  • dotPeek : un decompilatore autonomo di JetBrains (attualmente disponibile come parte di un EAP).

Tutti questi affrontano il problema in modi leggermente diversi con diverse interfacce utente. Suggerirei di provare tutti e vedere quale preferisci.


4
+1 Per JustDecompile, sembra molto promettente!
Josh Stodola,

1
JustDecompile è fantastico. Ne ho provati molti altri, È fantastico!
Shimmy Weitzhandler,

13

Altri non menzionati qui -

  • Mono Cecil : con Cecil è possibile caricare assembly gestiti esistenti, sfogliare tutti i tipi contenuti, modificarli al volo e salvare sul disco l'assembly modificato.

  • Kaliro : questo è uno strumento per esplorare il contenuto delle applicazioni create utilizzando il framework Microsoft.Net.

  • Dotnet IL Editor (DILE) : Dotnet IL Editor (DILE) consente il disassemblaggio e il debug delle applicazioni .NET 1.0 / 1.1 / 2.0 / 3.0 / 3.5 senza codice sorgente o file .pdb. Può eseguire il debug anche di se stesso o degli assembly di .NET Framework a livello di IL.

  • Common Compiler Infrastructure : Microsoft Research Common Compiler Infrastructure (CCI) è un insieme di librerie e un'interfaccia di programmazione dell'applicazione (API) che supporta alcune delle funzionalità comuni ai compilatori e ai relativi strumenti di programmazione. CCI è utilizzato principalmente da applicazioni che creano, modificano o analizzano file eseguibili (PE) e debug (PDB) .NET portatili.



6

L'ultima versione di Red Gate è la 6.1. Tuttavia, la versione 5.1 non può essere aggiornata automaticamente alla versione 6 perché sono state apportate modifiche ai Termini di servizio, quindi si viene reindirizzati al sito per scaricare la versione 6.1. Ciò è dovuto principalmente a motivi legali, come puoi verificare nel seguente post:

Oi! Cosa sta succedendo con il meccanismo di aggiornamento di .NET Reflector?

Dopo l'aggiornamento manuale a 6.1 non si verificheranno più problemi.


6
Se l'unica soluzione è l'aggiornamento, allora sto cercando un prodotto diverso. Foot is down :)
Josh Stodola,

5
Alcune persone sono contente della versione X, perché tutti gli aggiornamenti dovrebbero applicarle? Questo sembra essere un problema comune con il software ultimamente.
Eric Schneider,

4
@drachenstern: a quanto pare il prodotto non sarà più gratuito, quindi ci si potrebbe aspettare che quando Red Gate ha rilevato Reflector. Il problema è che i prodotti Red Gate sono costosi e non hanno uno schema di prezzi per i singoli sviluppatori. Ora RG afferma che il Reflector costerà 35 $ ma penso che questo sia solo l'inizio e finirà per costare molto di più. La cosa triste è che ciò ridurrà la penetrazione del "mercato" per Reflector che nel corso degli anni è stato una sorta di strumento standard per gli sviluppatori .NET. Eventualmente qualcuno lavorerà su un'alternativa OSS.
Piotr Owsiak,

4
@drachenstern, non è il prezzo il problema. È il fatto che sono tornati sulla loro parola per mantenere il prodotto gratuito. Di cos'altro mentiranno? I $ 35 sono una "licenza perpetua", dicono ... ma per quanto tempo? Finché non perdono nuovamente i loro risultati trimestrali e decidono di cambiarli?
Ryan Lundy,

2
@drachenstern: ero consapevole che il tuo commento era mesi fa, volevo sottolineare che quello che stava succedendo in quel momento si adattava a tutta la situazione adesso. Non sto dicendo che RedGate sia malvagio, anche se in questo caso particolare va sottolineato che hanno detto che manterranno Reflector libero. Quello che ho cercato di dire è che 35 $ e persino 70 $ non si adattano allo schema dei prezzi con il resto dei loro strumenti e sono davvero preoccupato che Reflector diventerà piuttosto costoso nel tempo. Anche se potrei comprarlo, non sarò più in grado di dire ai miei colleghi sviluppatori: "Ehi, prendi Riflettore!"
Piotr Owsiak,

4

Invece di utilizzare Autoupdater, impostiamo le proprietà del file EXE in sola lettura. In questo modo non elimina il file.


2

Non sono sicuro di cosa tu voglia davvero qui. Se vuoi vedere il codice sorgente di .NET framework, puoi provare Netmassdownloader . È gratis.

Se vuoi vedere qualsiasi codice dell'assembly (non solo .NET), puoi usare ReSharper . Anche se non è gratuito.


2
Codice? Piuttosto basta digitare le definizioni, giusto?
Piotr Owsiak,

hai bisogno di un grosso cluster per eseguire resharper, ad alcuni di noi piace programmare su un laptop)
Ivan G.

1

9Rays aveva un decompilatore, ma non ho controllato da un po '. Non era gratuito, ricordo ...

Ce n'è anche uno nuovo (almeno per me) chiamato Dis #.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.