Domanda

Esiste un software per fare questo? Non ho trovato tutte le informazioni utili su internet in modo che sto chiedendo qui.

È stato utile?

Soluzione

Non è possibile ottenere il codice esatto, ma è possibile ottenere una versione decompilato di esso.

Il più popolare (e meglio) strumento è Riflettore , ma ci sono anche altri decompilatori NET (come ad esempio Dis # ). È inoltre possibile decompilare il IL utilizzando ILDASM , che viene fornito con gli strumenti di .NET Framework SDK.

Altri suggerimenti

Lingue solo gestite come c# e Java può essere decompilato completely.You può visualizzare il codice sorgente completo. Per Win32 dll non è possibile ottenere il codice sorgente.

Per CSharp dll Usa DotPeek per tradizione familiare, è gratuito e funziona stesso di Redgate .Net Compiler

Buon divertimento.

dotPeek

entrare descrizione dell'immagine qui

Selezionare il .dll a decompilare

entrare descrizione dell'immagine qui

Questo è tutto

È possibile utilizzare Reflector e anche usare Add-In FileGenerator al codice sorgente estratto in un progetto.

Usa Rifrattore. Download da qui .

  1. Aprire il software dopo l'installazione.
  2. Premere Ctrl + O e selezionare il file DLL.
  3. Dll verrà mostrato nel riquadro a sinistra.
  4. Fare clic destro su Dll e selezionare Esporta codice sorgente.
  5. Selezionare la cartella in cui si desidera esportare i file
  6. Attendere per un po 'potrebbe richiedere 2-3 minuti

entrare descrizione dell'immagine qui

Se vuoi sapere solo alcuni principi fondamentali all'interno della DLL di montaggio per esempio Le classi, metodo, ecc, per caricarli dyanamically

si può fare uso di strumenti IL Disassembler fornito da Microsoft.

In generale trova in: "C: \ Program Files (x86) \ Microsoft SDK \ Windows \ v7.0A \ Bin"

Rifrattore per recuperare il mio script / codice dll file.

È possibile utilizzare dotPeek L'unica cosa che ho da dire è che quando lo si utilizza, tasto destro del mouse sulla classe per selezionare decompilato Fonte invece di doppio clic, altrimenti dotpeek visualizza solo il contenuto del file locale cs, non il contenuto decompiled.

 var destinationfilename = "";
        if (System.IO.File.Exists("nameoffile.dll"))
        {
          destinationfilename = (@helperRoot + System.IO.Path.GetFileName(medRuleBook.Schemapath)).ToLower();
          if (System.IO.File.Exists(destinationfilename)) System.IO.File.Delete(destinationfilename);
          System.IO.File.Copy(@'nameoffile.dll", @destinationfilename);
        }
        // use dll-> XSD
        var returnVal =
          await DoProcess(
            @helperRoot + "xsd.exe", "\"" + @destinationfilename + "\"");
        destinationfilename = destinationfilename.Replace(".dll", ".xsd");
        if (System.IO.File.Exists(@destinationfilename))
        {
          // now use XSD
          returnVal =
            await DoProcess(
              @helperRoot + "xsd.exe", "/c /namespace:RuleBook /language:CS " + "\"" + @destinationfilename + "\"");
          if (System.IO.File.Exists(@destinationfilename.Replace(".xsd", ".cs")))
          {
            var getXSD = System.IO.File.ReadAllText(@destinationfilename.Replace(".xsd", ".cs"));

          }
        }
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top