static Pipeline GetPipeline(Options options) { Pipeline p = new Pipeline(); if (options.Merge) p.AppendStep(new MergeAssembliesStep()); p.AppendStep(new RenameStep(GetRenamignOptions(options), GetReflectionOptions(options))); p.AppendStep(new OutputStep()); return p; }
private static RenamingOptions GetRenamignOptions(Options options) { RenamingOptions result = RenamingOptions.Default; if(options.CTSCompliance) result |= RenamingOptions.CTSCompliance; if (options.KeepNamespaces) result |= RenamingOptions.KeepNamespaces; if (options.InsertRenameMaps) result |= RenamingOptions.Reflection; return result; }
static void Main(string[] args) { var options = new Options(); ICommandLineParser parser = new CommandLineParser(); if (parser.ParseArguments(args, options)) { ObfuscationContext context = new ObfuscationContext(); context.AddSearchDirectory(options.InputDir); context.OutputDirectory = options.OutputDir; foreach (var assembly in options.AssemblyNames) { context.AddAssembly(assembly); } Pipeline p = GetPipeline(options); p.Process(context); System.Console.ReadKey(); } }
private static ReflectionOptions GetReflectionOptions(Options options) { return ReflectionOptions.Types | ReflectionOptions.Methods | ReflectionOptions.Fields | ReflectionOptions.Properties | ReflectionOptions.NestedTypes; }