1

J'ai une solution Visual Studio 2008 multi-projets. Je voudrais masquer certaines sorties du projet avant qu'elles ne soient intégrées dans le fichier d'installation à l'aide de Dotfuscator. Je voudrais donc pouvoir:Obfuscating Setup package content

  1. Être en mesure de sélectionner les éléments à obscurcir
  2. Créer un package d'installation qui contient le code déjà obscurcie
  3. Vérifiez si l'obscurcissement a été un succès

Quelle est la meilleure façon de faire cela?
(je suis aussi prêt à utiliser d'autres outils, Dotfuscator n'est pas obligatoire.)

Répondre

1

Si vous utilisez une des versions commerciales de Dotfuscator (Dotfuscator Suite ou Dotfuscator MDE) ce qui est très facile à réaliser. Dotfuscator fournit un projet Visual Studio qui peut utiliser d'autres sorties de projet comme entrée. Le projet Dotfuscator expose également tous ses assemblys de sortie à d'autres projets Visual Studio (y compris les différents types de projet Setup) afin qu'ils puissent consommer directement les assemblages obfusqués et les intégrer dans le programme d'installation. Voir l'article de base de connaissances this pour obtenir des informations supplémentaires sur l'inclusion sélective d'assemblages obfusqués et de dépendances dans des projets d'installation.

Vous pouvez sélectionner les assemblées à obscurcir (et combien obscurcissement est appliqué à chacun d'eux) dans un certain nombre de façons, y compris la décoration de vos ensembles ou code spécifique avec le System.Reflection.ObfuscateAssemblyAttribute ou System.Reflection.ObfuscationAttribute et/ou en utilisant les différents paramètres de l'interface utilisateur Dotfuscator pour inclure ou exclure des assemblages et des éléments des diverses transformations d'obfuscation avec une série de règles (y compris des expressions régulières) et/ou en sélectionnant des éléments individuels dans l'interface graphique. Par défaut Dotfuscator ajoute un attribut (DotfuscatorAttribute) à chaque assembly qu'il traite que vous pouvez ensuite vérifier avec un script après l'installation de build ou de test pour vous assurer que l'attribut est présent. Voir http://www.preemptive.com/products/dotfuscator/manuals/NoDotfuscatorAttribute_Global_Option.html pour plus d'informations sur cet attribut.

+0

Sélectionné la meilleure réponse, mais pas encore assez. – Germstorm