Если вы используете любую из коммерческих версий Dotfuscator (Dotfuscator Suite или Dotfuscator MDE), это очень легко сделать. Dotfuscator предоставляет проект Visual Studio, который может использовать выходные данные других проектов в качестве входных данных. Проект Dotfuscator также предоставляет все свои выходные сборки другим проектам Visual Studio (включая различные типы проектов установки), чтобы они могли напрямую использовать запутанные сборки и встроить их в установщик. См. эту статью базы знаний для получения дополнительной информации о выборочном включении запутанных сборок и зависимостей в проекты установки.
Вы можете выбрать, какие сборки обфусцировать (и сколько обфускации применять к каждой из них) несколькими способами, включая декорирование ваших сборок или конкретного кода с помощью System.Reflection.ObfuscateAssemblyAttribute или System.Reflection.ObfuscationAttribute и / или использование различных настроек в пользовательском интерфейсе Dotfuscator для включения или исключения сборок и элементов из различных преобразований запутывания с рядом правил (включая регулярные выражения) и / или выбор отдельных элементов в графическом интерфейсе пользователя.
По умолчанию Dotfuscator добавляет атрибут (DotfuscatorAttribute) к каждой обрабатываемой им сборке, который можно затем проверить с помощью скрипта после сборки или тестовой установки, чтобы убедиться, что атрибут присутствует. См. http://www.preemptive.com/products/dotfuscator/manuals/NoDotfuscatorAttribute_Global_Option.html для получения дополнительной информации об этом атрибуте.