Táto stránka pre svoju správnu funkčnosť vyžaduje súbory cookies. Slúžia na authentifikáciu návštevníka, analýzu návštevnosti a reklamnú personalizáciu.
logo
Prihlásenie / Registrácia
mobile

Zavrieť
 

Recenzia: dnSpy – Debug aplikácii aj bez zdrojového kódu

Mini-rezencia programu dnSpy, ktorý vie byť dobrým pomocníkom pri hľadaní problémov s .NET aplikáciami
S rastúcou komplexnosťou programových riešení, rastie aj pravdepodobnosť chýb v programe. A ako naschvál sa chyby začnú prejavovať tam, kde máte obmedzené možnosti debug-ingu. V lepšom prípade na počítači kolegu v horšom na zariadení u zákazníka. Práve v týchto situáciach je dobré mať nachystané nástroje, ktoré nám pomôžu s ich nájdením. Jednou z nich môže byť práve dnSpy.

Nie je žiadnym tajomstvom, že aplikácie napísané v niektorom z .NETových jazykov sa dajú relatívne ľahko dekompilovať späť do zdrojového kódu. (Zdrojový kód samozrejme nie je úplne totožný s originálom, nakoľko počas prekladu zdrojového kódu do tzv. bytecode môže dôjsť zo strany kompilátora k rôznym optimalizáciám.). Práve táto možnosť umožnila vzniknúť mnohým nástrojom (Roslyn, ILSpy a pod), na ktorých tento program stavia.

Program dnSpy je debugger a .NET assembly editor. Narozdiel od nástroja Remote Debugger ktorý sa dodáva spolu s Visual Studiom, umožňuje debugovať aplikácie aj bez potreby mať k dispozícii zdrojový kód a debugovacie symboly, čo nám umožňuje debugovať aj cudzie aplikácie.

Prostredie programu pripomína vývojové prostredie a ovládanie je vcelku intuitívne. Triedy zdrojového kódu sú zobrazené v stromovej štruktúre a samotný zdrojový kód je prehľadne naformátovaný a farebne zvýraznený, tak ako sme zvyknutý z Visual Studia. Samozrejmosťou je aj analyzátor kódu, ktorým vieme ľahko dohľadať odkiaľ je metóda volaná a pod. Dekompilovať je možné do jazyka C#, Visual Basic aj do samotného IL. Poteší aj možnosť exportovať program ako VS projekt.

Samotný debug je tiež bezproblémový. Umiestnime breakpoint a spustíme aplikáciu ako by sme boli vo Visual Studio. Rovnako je možné sa pripojiť aj na servis bežiaci na pozadí cez voľbu Debug -> Attach to Process.. (alebo klávesovou skratkou CTRL + ALT + P). V menu Debug-> Windows máme k dispozícii aj Watch, informácie o vláknach, načítaných moduloch a pod.


Aplikácia je dostupná pod licenciou GPLv3 vo forme aplikácie pre .NET Framework 4.7.2 a novšie, prípadne v balíčkoch s priloženými .NET Core a samozrejme sú dostupné aj zdrojové kódy.

Sťahovať ju môžete priamo zo stránky autora: > link <

Prostredie aplikácie
Prostredie aplikácie II
Analyzer
Debug
Export do VS projektu

Codeblog
Diskusia

Žiadne príspevky v diskusii.

Nový príspevok

Na prispievanie do diskusie musíte byť prihlásený.