Question

http://www.red-gate.com/products/dotnet-development/smartassembly/

Existe-t-il un programme comme SmartAssembly pour C ++ qui supprimera tout le code inutile de toutes les DLL liés (pour réduire la taille) et les emballer en un seul EXE, puis l'obscassez-le et le comprime? pour faire un joli petit exe sécurisé?

J'adore SmartAssembly pour tout programme .NET que je fais, je me demande s'il y en a pour C ++.

MERCI!

Était-ce utile?

La solution

Oui, un tel outil est appelé un lingueur. Vous l'exécutez généralement après avoir compilé votre application, bien que dans la plupart des environnements de développement intégrés, cela apparaît comme une étape unique avec un nom intelligent comme "Build".

Autrement dit, les cerceaux Vous devez sauter pour supprimer le code inutile et "obscurcir" pour les langues gérées comme C # ne sont absolument pas nécessaires pour C ++. Le linker ne liera que dans les fonctions que votre code utilise, et comme tout est compilé en binaire, il est déjà aussi obscurci que possible.

Cependant, rien ne va lier dans le contenu des DLL. L'intérêt d'une DLL est qu'il est dynamiquement Référencé par l'exécutable, c'est pourquoi il s'appelle un "dynamique Bibliothèque de liens ". Si vous voulez une bibliothèque de code qui est liée statiquement au moment de la compilation, vous devez utiliser une bibliothèque statique au lieu d'une DLL.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top