IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Contribuez .NET Discussion :

DnSpy : Débogueur, décompilateur et éditeur d'assembly DotNet


Sujet :

Contribuez .NET

  1. #1
    Robot Forum
    Avatar de forum
    Inscrit en
    Novembre 1999
    Messages
    2 753
    Détails du profil
    Informations forums :
    Inscription : Novembre 1999
    Messages : 2 753
    Points : 2 548
    Points
    2 548
    Par défaut DnSpy : Débogueur, décompilateur et éditeur d'assembly DotNet
    Bonjour,

    Je vous propose un nouvel élément à utiliser : DnSpy : Débogueur, décompilateur et éditeur d'assembly DotNet

    DnSpy est un outil open source codé en C# destiné au reverse engineering d'assembly .NET. Il comprend un décompilateur, un débogueur et un éditeur d'assembly et peut être facilement étendu en écrivant vos propres extensions. Il utilise dnlib pour lire et écrire des assembly de sorte qu'il est capable de traiter des assembly obfusqué sans planter.





    Qu'en pensez-vous ?

  2. #2
    Expert confirmé
    Avatar de wallace1
    Homme Profil pro
    Administrateur systèmes
    Inscrit en
    Octobre 2008
    Messages
    1 966
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Administrateur systèmes
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 966
    Points : 4 005
    Points
    4 005
    Billets dans le blog
    7
    Par défaut
    Quelques précisions sur cet excellent outil :

    Fonctionnalités :

    --> Éditeur d'Assembly
    • Utiliser C# ou Visual Basic ou IL pour modifier toute méthode, propriété et événement
    • Editeur de code et IntelliSense (achèvement de code, aide signature, info rapide)
    • Des classes entières peuvent être ajoutées aux assemblys en copiant/collant du code C # ou Visual Basic
    • Modifier toutes les métadonnées de types (classes), méthodes, propriétés, événements, champs
    • Ajouter, supprimer, renommer tout type (classe), méthode, propriété, événement, champ
    • Modifier, ajouter, supprimer les ressources .NET et les enregistrer sur le disque
    • L'éditeur IL permet d'éditer des corps de méthode au niveau IL: instructions IL, variables, gestionnaires d'exceptions




    --> Débogueur :
    • Déboguer n'importe quel assembly .NET, pas de code source requis
    • Définir des points d'arrêt dans tout assembly, y compris les assembly du framework, les assembly dans le GAC et les assembly existantes
    • chargées en mémoire
    • Fenêtre de mémoire
    • Fenêtre de sortie
    • Joindre au processus
    • Fenêtre Locale
      • Les contenus bruts des variables (par exemple les tableaux d'octets déchiffrés) peuvent être sauvegardés sur le disque
    • Fenêtre de pile d'appels
    • Fenêtre de threads
    • Fenêtre Modules
      • Les modules (par ex. Modules déchiffrés en mémoire) peuvent être sauvegardés sur le disque
    • Paramètres d'exception
    • Peut déboguer des assembly dynamiques
    • Le débogage des assemblys CoreCLR est pris en charge


    --> Decompile vers C #, Visual Basic, IL
    --> Thèmes: bleu, sombre, léger (et contraste élevé)
    --> Supporte les écrans plus petits (par exemple, ordinateurs portables)
    • La hauteur de ligne peut être optimisée pour les petits écrans
      • Les lignes blanches et non alphanumériques sont 75% de la hauteur normale
      • Pas d'espacement supplémentaire entre les lignes (enregistre 1 pixel vertical par ligne)
    • Le menu et la barre d'outils partagent la même ligne
    • Le mode plein écran (Maj + Alt + Entrée) enregistre certains pixels verticaux


    --> Prise en charge du DPI élevé et prise en charge par le DPI
    --> Traduit en plusieurs langues
    --> Très extensible
    • Ecrivez vos propres extensions et ajoutez vos propres fonctionnalitées
    • Toutes les principales fonctionnalités sont déjà des extensions (éditeur d'assembly, debugger, decompilateur)


    --> Plusieurs onglets et groupes d'onglets
    • Votre écran est trop grand? Ne le coupez pas en deux, ajoutez un autre groupe d'onglets verticaux et lisez deux classes à la fois!
    • Les onglets et les positions dans les éditeurs de texte sont enregistrés lorsque vous fermez dnSpy et restaurés au démarrage afin que vous puissiez continuer où vous avez quitté


    --> Recherche d'assembly
    • Rechercher des types (classes), des méthodes, des propriétés, des événements, des champs
    • Rechercher des chaînes ou des nombres dans le code


    --> Analyseur d'assembly
    • Trouver les usages des types (classes), des méthodes, des propriétés, des événements, des champs


    --> Décompilateur BAML à XAML
    --> Rapide
    --> Références, mots clés
    • Les références sous le caret sont mises en surbrillance pour faciliter la visualisation de toutes les utilisations de la référence dans le code
    • Tab, Shift + Tab, Ctrl + Maj + Haut, Ctrl + Maj + Bas se déplace à la référence suivante ou précédente
    • Alt + Bas et Alt + Haut se déplacent vers la définition suivante ou précédente (type (classe), méthode, propriété, événement, champ)


    --> Visualisateur de structure
    • Lignes de guidage verticales indiquées entre le début et la fin des blocs de code
    • Différentes couleurs sont utilisées pour différents blocs, par exemple. Boucle, conditionnel, méthode, etc


    --> Dnlib est utilisé pour lire et écrire des assembly de sorte qu'il peut gérer le code obscurci (par exemple, les logiciels malveillants) sans planter
    --> Aller aux commandes
    • Point d'entrée
    • Méthode d'initialisation statique de l'assembly (<Module> .. cctor)
    • Tout jeton de métadonnées
    • Toute ligne de métadonnées


    --> La syntaxe et les commentaires sont mis en évidence dans des infos bulles lors d'un survol d'un type (classe), d'une méthode, d'une propriété, d'un événement, d'un champ
    --> Les méthodes, les propriétés et les événements sont décompilés dans l'ordre du code source ou un ordre personnalisé défini par l'utilisateur
    • Ordre de code source signifie que les méthodes connexes sont généralement les unes à côté de l'autre, comme le programmeur le souhaite.


    --> Les images d'arrière-plan peuvent être affichées dans l'éditeur de texte
    --> Exporter vers projet décompile tous les assembly sélectionnés et crée une solution Visual Studio

    • Plusieurs assembly peuvent être exportés en même temps
    • Crée une solution Visual Studio (prend en charge VS2005 - VS-le plus récent) et les fichiers de projet
    • Supporte les classes WinForms et WPF (crée un fichier code-behind .cs / .vb et un fichier WinForms .resx / WPF .xaml)
    • Convertit les ressources .NET en fichiers .resx


    --> Ouvert depuis le GAC
    --> Décompilateur de ligne de commande

    • Prise en charge de Windows, Linux et Mac
    • La syntaxe affiche la sortie sur l'écran


    --> Scripter avec C # REPL
    • Appeler des méthodes dnSpy publiques à partir de scripts
    • Script depuis le débogueur et d'autres extensions


    --> Hex éditeur
    --> Les tokens et les adresses des méthodes sont affichés dans les commentaires et peuvent être cliqués pour aller aux métadonnées brutes ou aux octets IL
    --> Éditeur de métadonnées
    --> Réduire la commande des nœuds de l'Explorateur d'assemblage pour effacer rapidement les nœuds non utilisés
    --> Bien plus encore......

Discussions similaires

  1. [EDI] Quel est l'éditeur que vous recommandez pour PHP ?
    Par Lana.Bauer dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 400
    Dernier message: 10/04/2018, 21h08
  2. vb2008 Débogueur et Assembly
    Par squale69 dans le forum Visual Studio
    Réponses: 2
    Dernier message: 25/01/2011, 03h05
  3. Avec quel éditeur concevez-vous vos site web ?
    Par Marc-xhtml dans le forum Outils
    Réponses: 263
    Dernier message: 06/05/2009, 15h43
  4. Quel éditeur de code "multilanguage" ?
    Par biboun dans le forum Langages de programmation
    Réponses: 12
    Dernier message: 14/11/2002, 12h43

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo