Denne artikel er en spejling af maskinoversættelse, klik venligst her for at springe til den oprindelige artikel.

Udsigt: 20394|Svar: 0

[Adskillelse] c# Disassembly Tutorial.net Program Dekompileringsværktøj (ILSpy)

[Kopier link]
Opslået på 06/06/2015 11.09.21 | | | |
Brug af ILSpy dekompileringsværktøjet. Dog kræver ILspy, at .NET Framework 4.0 installeres på din computer. ILspy kan konvertere en DLL-fil til C# eller VB-sprog. ILspy kan gemme en enkelt fil som en .cs fil eller .vb fil, og når der er mange filer, kan du vælge at gemme den som en projektfil. C#-sætninger kan dekompileres af ILspy og kan understøtte dekompilering af yield return-sætninger og lambdas-udtryk.

Jeg plejede at bruge Reflector til at se noget information om .NET-biblioteket, men siden februar 2011 er Reflector begyndt at blive betalt software, så udviklere, der elsker fri software, er begyndt at udvikle deres egen dekompilerede software. Så ILspy blev født på grund af held. ILSPY er et open source-værktøj, der erstatter reflektorer, og det dekompilerer kode, der ligner reflektorer.

SharpDevelop er en anden og eneste . .NET open tool, og det er open source. Det tilbyder også ret gode funktioner, næsten ved at omskrive Visual Studio. I den nyeste version er understøttelse af Visual Studios løsningssikkerhedsfiler og projektfiler blevet tilføjet direkte. ILSpy er et dekompilerværktøj fra SharpDevelop-gruppen og er også open source, og dets debugger og dekompilator er beskrevet nedenfor.


Skærmbillede af ILspys interface


ILSpys interface ligner Reflector, med trækontroller, der viser samlingen og dens type til venstre, og den tilsvarende kildekode til højre. Den grundlæggende dekompileringsfunktion er ikke dårlig sammenlignet med Reflector, og nogle gange kan den endda dekompileres med ILSpy for assemblies, der ikke kan dekompileres (på grund af kryptering) med Reflector.

ILspy kræver, at .NET Framework 4.0 installeres på din computer.Der er flere almindeligt anvendte funktioner i ILspy

Den grundlæggende type dekompileringsfunktion er tilgængelig

Nu understøttes kun dekompilering af kildekode til C# og IL-sprog, ikke VB.

Renderingerne er:

ILSpys kode-gemmefunktion

Når man klikker på en type, vælger man File-> Save Code, dekompilerer den aktuelle type og gemmer den til den angivne fil, og når man vælger en assembly, gemmes Save Code som en projektfil (csproj), og alle dens typer tilføjes til projektet.


ILSpys debugger-funktion

Debuggeren her henviser ikke til Visual Studiokildeniveauet af debugger, men henviser til debuggeren af assemblyen. Reflector har et tilføjelsesprogram, der kan tilknyttes direkte til Visual Studio for at fejlfinde tredjepartsbiblioteker uden at skulle dekompilere tredjepartsbibliotekerne og tilføje dem til projektet i form af kildekode.

ILSpy har også denne funktion, som gør det muligt at fejlfinde tredjeparts assemblies direkte, med to muligheder

Hvis tredjepartsbiblioteket er en eksekverbar fil, kan du starte programmet med Debug som en eksekverbar fil.

Hvis tredjepartsbiblioteket er en assembly (DLL), kan du vedhæfte det med en Attach til kørende applikation for at begynde at fejlfinde assemblyen.


Som du allerede kan se på billedet ovenfor, er dens brug det samme som ved fejlfinding af kildekode. Hvor du skal overvåge variabelværdien, sætte et breakpoint, og når programmet kører til dette punkt, kan du observere variabelens værdi ved at overvåge formen.

Forskellen mellem de to er, at når Attach til en kørende applikation fejlfindes, vil skærmen ikke få dens værdi, hvis koden optimeres af compileren.

Som vist på billedet kan værdien af den variabel num, der fejlfindes, ikke vises, fordi koden er optimeret. Den officielt anbefalede metode er Debug an executable able


Som med fejlfinding af .NET-kildekode i Visual Studio kan du gå ind i, gå over, fortsætte, og statuslinjen vil vise standby, kørende og fejlfinding.

Ud over at fejlfinde koden i C#/VB-form af assemblyen, kan den også fejlsøges i IL-kode, som vist i figuren nedenfor

ILSpys debugger findes som et plugin, sørg for at inkludere ILSpy.Debugger-plugin'et.


Men fejlfinding. .NET-assemblies skal kræve PDB-filer. Dog genererer ILSpy ikke PDB-filer (der genereres ingen PDB-filer), og det kan ikke fejlfinde ASP.NET webapplikationer og webtjenester.






Tidligere:>> rekrutterings<<
Næste:Shenzhen Liantianxia Technology Co., Ltd
Ansvarsfraskrivelse:
Al software, programmeringsmaterialer eller artikler udgivet af Code Farmer Network er kun til lærings- og forskningsformål; Ovenstående indhold må ikke bruges til kommercielle eller ulovlige formål, ellers skal brugerne bære alle konsekvenser. Oplysningerne på dette site kommer fra internettet, og ophavsretstvister har intet med dette site at gøre. Du skal slette ovenstående indhold fuldstændigt fra din computer inden for 24 timer efter download. Hvis du kan lide programmet, så understøt venligst ægte software, køb registrering og få bedre ægte tjenester. Hvis der er nogen overtrædelse, bedes du kontakte os via e-mail.

Mail To:help@itsvse.com