Distribuzione ClickOnce
Nella distribuzione ClickOnce, il task Babel è configurato per offuscare l’assembly target subito dopo il passo Compile.
Apri il file .csproj di Visual Studio e aggiungi le seguenti istruzioni MSBuild prima dell’elemento di chiusura Project.
<UsingTask TaskName="Babel" AssemblyName="Babel.Build, Version=10.0.0.0, Culture=neutral, PublicKeyToken=138d17b5bd621ab7" />
<Target Name="Obfuscate" AfterTargets="Compile" Condition="'$(Configuration)|$(Platform)' == 'Release|AnyCPU'">
<Babel InputFile="$(ProjectDir)$(IntermediateOutputPath)$(TargetFileName)" OutputFile="$(ProjectDir)$(IntermediateOutputPath)$(TargetFileName)" ObfuscateTypes="true" ObfuscateEvents="true" ObfuscateMethods="true" ObfuscateProperties="true" ObfuscateFields="true" VirtualFunctions="true" UnicodeNormalization="true" FlattenNamespaces="true" OverloadedRenaming="true" StringEncryption="hash" ControlFLowObfuscation="if=on;switch=on;case=on;call=on" ControlFLowIterations="3" />
</Target>Nota che gli attributi InputFile e OutputFile del task sono impostati sull’output intermedio della build. In questo modo Visual Studio crea il pacchetto di distribuzione ClickOnce usando l’assembly target offuscato.
Pacchetto NuGet di Babel Obfuscator
Se hai il pacchetto NuGet Babel.Obfuscator, non c’è bisogno di configurare il task Babel nel file di progetto. Ti basta aggiungere al progetto il riferimento al pacchetto NuGet.
Scarica il codice sorgente dell’esempio.
Last updated on