Affichage des articles dont le libellé est Code source. Afficher tous les articles
Affichage des articles dont le libellé est Code source. Afficher tous les articles

vendredi 3 juillet 2015

Source VbNet : Détecter si le disque dur est un SSD !

Bonsoir à tous,

Il fut un temps j'utilisais les requêtes WMI pour savoir si un disque dur était de type SSD mais cette technique n'était pas des plus fiables puisqu'elle se basait sur tout ou partie du nom.....
Je suis tombé il y a peu de temps sur ce billet https://emoacht.wordpress.com/2012/11/06/csharp-ssd/  qui illustre et démontre d'une manière très fiable comment répondre à la question de ce sujet !

Donc, j'ai retravaillé cette librairie et je l'ai adapté pour mes besoins personnels, ce qui donne ceci :

http://pastebin.com/71d3exki

(Vous trouverez comment appeler la fonction sur mon pastebin)


Enjoy !

jeudi 15 mai 2014

DotNet Renamer : obfuscation d'assembly DotNet

Le code source de DotNet Renamer (librairie de renommage d'assembly) sera bientôt disponible sur mon Bitbucket


Cela fait maintenant 15 jours que je travail sur un vieux projet déterré de l'année passée !
Ce projet n'est en somme que l'ossature de mon dernier projet du même genre nommé : DotNet Patcher


Cette librairie permet actuellement le renommage des types et membres suivants :

  • Namespaces
  • Types
  • Methods
  • Properties
  • Fields 
  • CustomAttributes (uniquement l'attribut "AccessedThroughPropertyAttribute" !)
  • Events
  • Variables
  • Parameters
Il est bien évidement possible de tout paramétrer à souhait ou d'utiliser des paramètres définis (cf code en bas) ainsi que le choix des caractères de renommage aléatoire parmi lesquels :

  • Alphabétique (A à Z en minuscule et majuscule)
  • Chinois 
  • Braie
  • Invisible
Le renommage des noms de ressources est également pris en compte en adéquation avec le renommage des types et namespaces !

Voilà actuellement comment j'utilise ma librairie :

 
    Dim param As New Cls_Parameters("C:\AssemblyToRename.exe", "C:\AssemblyToRename-Renamed.exe")
    param.ReadAssembly()
 
    Dim context As New Cls_Context(param)
    context.RenamingAccept = New Cls_RenamerState() With _
       {.ReplaceSetting = Cls_RenamerState.ReplaceNamespaces.Empty, _
        .RenameSetting = Cls_RenamerState.RenameNamespaces.Full}
    context.RenamingType = Cls_RandomizerType.RenameEnum.Normal
 
    context.RenameAssembly()
    context.WriteAssembly()
    context.Clean()

L'explorateur de solutions de mon projet :



Je suis actuellement en train de commenter la source et ne cesserais de l'agrémenter les jours qui viennent.




A bientôt et bon codage !