S'identifier / Créer un compte
  • Actualités
  • Dossiers
  • Tests
  • Commentaires
  • INpactiens
Publicité

dotPeek 1.0 : Jetbrains propose un décompilateur .Net gratuit

Ah ben tiens, on en avait justement besoin :D

Jetbrains, connu pour ses IDE et ses outils dédiés aux développeurs tels que Resharper, vient d'annoncer un décompilateur gratuit dédié aux applications .Net : dotPeek. Celui-ci se propose de vous fournir le code source d'exécutables ou DLL basées sur le Framework .Net (1.0 à 4.5), mais aussi les fichiers Metadata de Windows 8 (.winmd).

Cet outil est distribué sous la forme d'un fichier MSI ou d'un fichier zip de 15 / 20 Mo environ. Une fois installé, vous pourrez tenter d'ouvrir n'importe quelle application ou DLL .Net, mais aussi des archives qui en contiennent. Vous pourrez alors explorer leur code dans une interface qui se veut assez proche de celle de Visual Studio.

Jetbrains dotPeek

Comme souvent avec des outils du genre, les commentaires et les noms de variables ne seront pas les mêmes qu'à l'origine, mais cela pourra s'avérer pratique lorsque vous avez perdu la source d'un fichier par exemple. Nous avons d'ailleurs tenté l'expérience avec un petit outil que nous avions créé pour relever la mémoire totale utilisée par un navigateur, mais dont nous avions perdu le code. Celui-ci a été parfaitement été retrouvé et nous allons donc pouvoir le remettre à jour. 

Il en a été de même pour d'autres outils que nous avons créés pour nos besoins internes et qui se basent sur C# : nous avons même pu naviguer dans les différentes classes de ces applications. Il en est de même pour leurs méthodes et les différentes variables, le tout étant simplifié par un menu dédié qui s'avère plutôt pratique et intuitif pour qui utilise les IDE de Microsoft (puisqu'il en reprend le look et les icônes) : l'Assembly Explorer. 

Tout juste regrettera-t-on de ne pas pouvoir exporter le code source ainsi décompié vers un nouveau projet C# prêt à utilise, ce qui pourrait tout de même s'avérer pratique pour de très gros projets. Il semble aussi impossible pour le moment d'exporter une ressource, telle qu'une icône par exemple. Celles-ci seront uniquement disponible au sein des fichiers .resx, sous forme de texte au sein d'un champ « value ».

Pour tester dotPeek 1.0 il vous suffit de vous rendre par ici. Vous en apprendrez plus sur ses différentes fonctionnalités par là. Une vidéo de présentation a d'ailleurs été mise en ligne :

Publiée le 14/05/2012 à 14:41

Soutenez l'indépendance de Next INpact en devenant Premium

  • Tout le contenu de Next INpact sans pub
  • Et bien plus encore...

Il y a 45 commentaires

Avatar de gentooist INpactien
gentooist Le lundi 14 mai 2012 à 14:49:42
Inscrit le vendredi 10 novembre 06 - 190 commentaires
Cet outil ne fait-il pas doublon avec ildasm ?
Avatar de StackHeap INpactien
StackHeap Le lundi 14 mai 2012 à 14:49:50
Inscrit le lundi 20 septembre 10 - 853 commentaires
Dans le même style il y a aussi ILSpy qui est gratuit et open-source et permet l'export du code :
http://wiki.sharpdevelop.net/ILSpy.ashx
Avatar de ZoZo INpactien
ZoZo Le lundi 14 mai 2012 à 14:56:31
Inscrit le vendredi 19 décembre 03 - 3833 commentaires
De toute façon avec des outils comme Reflector cela fait de nombreuses années qu'on peut retrouver explorer le code source d'une application .NET.
La parade s'appelle "obfuscation".
Avatar de David_L Equipe
David_L Le lundi 14 mai 2012 à 14:57:16
Inscrit le vendredi 13 septembre 02 - 26644 commentaires
Cet outil ne fait-il pas doublon avec ildasm ?

D'autres outils du genre existent déjà, mais c'est toujours pas mal d'en voir de nouveau arriver avec leurs avantages propres, puis tous ne sont pas toujours simple à utiliser / efficaces / bons... Mais ILSpy est plutôt pas mal oui, même si l'interface est un peu plus austère. Après il a l'avantage de permettre l'export du projet complet, ce qui est plutôt pratique
Avatar de Saphiria INpactien
Saphiria Le lundi 14 mai 2012 à 15:02:51
Inscrit le vendredi 14 mars 08 - 644 commentaires
Je ne m'y connais pas trop dans le domaine, étant développeur "amateur" en .NET (C# plus précisément), mais ce genre d'outil ce n'est pas la porte ouverte aux cracks et bypass en tout genre (vu que plus besoin de passer par un éditeur hexa ou je ne sais quelle autre joyeuseté).

Ou alors, j'ai rien compris ?
Avatar de tom103 INpactien
tom103 Le lundi 14 mai 2012 à 15:03:39
Inscrit le dimanche 7 janvier 07 - 413 commentaires
C'est pas vraiment nouveau, ça fait déjà plusieurs mois que dotPeek existe en beta. En gros, quand Reflector est devenu payant, tous les éditeurs se sont mis à créer leur propre décompileur...

Ah ben tiens, on en avait justement besoin

Bah rigole pas, j'utilise ce genre de chose quasiment tous les jours ;)

Cet outil ne fait-il pas doublon avec ildasm ?

ildasm, ça te donne le code en IL c'est à dire le langage machine du CLR (la machine virtuelle de .NET), donc c'est pas vraiment facile à lire.
dotPeek, Reflector etc décompilent le code en C# ou VB.NET (ou autre langage .NET)
Avatar de 127.0.0.1 INpactien
127.0.0.1 Le lundi 14 mai 2012 à 15:03:40
Inscrit le mercredi 29 avril 09 - 13214 commentaires
cela pourra s'avérer pratique lorsque vous avez perdu la source d'un fichier par exemple.




Ou comment éviter l'épineux problème de la légalité de la décompilation...
Avatar de actionthomas INpactien
actionthomas Le lundi 14 mai 2012 à 15:04:35
Inscrit le mercredi 5 mai 04 - 359 commentaires
Pour un décompilateur qui exporte le projet et les ressources, il y a JustDecompile de Telerik

Edité par actionthomas le lundi 14 mai 2012 à 15:06
Avatar de Oungawak INpactien
Oungawak Le lundi 14 mai 2012 à 15:05:36
Inscrit le mercredi 20 août 08 - 1539 commentaires
Pas mal du tout ! :) Et moi il m'a même retrouvé le nom des variables ! .NET stocke pas mal de méta-données pour utiliser la réflexion de code. C'est vrai que c'est dommage qu'on puisse pas exporter directement le résultat dans un projet. Peut être dans une mise à jour, ou un plugin vu qu’apparemment on peu en intégrer d'après ce que j'ai vu dans les options.

Il y avait Reflector à un moment qui était gratuit... Avant qu'il pète les plombs niveau tarif.
Avatar de KooKiz INpactien
KooKiz Le lundi 14 mai 2012 à 15:09:46
Inscrit le mardi 5 avril 05 - 385 commentaires
Je ne m'y connais pas trop dans le domaine, étant développeur "amateur" en .NET (C# plus précisément), mais ce genre d'outil ce n'est pas la porte ouverte aux cracks et bypass en tout genre (vu que plus besoin de passer par un éditeur hexa ou je ne sais quelle autre joyeuseté).

Ou alors, j'ai rien compris ?


Ah clairement. Surtout quand un plugin pour Reflector (un autre logiciel du même genre, qui a longtemps été la référence) permet de modifier directement une assembly sans même avoir à en exporter le code. Mh, la variable TrialTime qui vaut 15 jours, allez hop je la mets à 9999 jours

Edité par KooKiz le lundi 14 mai 2012 à 15:10
;