Отказ от ответственности: Я работаю в компании, чей продукт я собираюсь упомянуть. Я знаю, что другие инструменты могут это сделать, но у меня есть только прямой опыт работы с этим.
Нет необходимости изменять какой-либо источник ITextSharp или выполнять свою собственную сборку. Вы можете достичь всего, что вам нужно, только с помощью сборок в каталоге bin.
Вы можете использовать Dotfuscator (опция удаления) для выполнения статического анализа всего вашего приложения и вывода сборки, содержащей только код, который фактически используется в вашем приложении. Кроме того, вы можете использовать функцию связывания, чтобы связать DLL с вашим exe, чтобы вы отправляли только один файл клиенту.Это может привести к значительно меньшему охвату приложений. Вы можете воспользоваться всеми этими функциями, даже если вы решите не использовать функции обфускации, которые усложняют работу приложения и реверсируют его.
Dotfuscator может быть добавлен в ваш процесс сборки несколькими способами, мы интегрируем непосредственно в Visual Studio (версии с 2002 по 2010 год), чтобы вы могли просто создать свое решение, также есть задача MSBuild для использования в команде Создайте сервер (если вы не хотите, чтобы сервер сборки создавал ваше решение), а также версию командной строки для любой другой системы сборки.
Dotfuscator будет работать над любым типом сборки .NET, включая сборки Silverlight.
Эти функции доступны только в Pro версии Dotfuscator, если вы обратитесь в PreEmptive Solutions, мы можем настроить вас с бесплатной оценкой по времени, чтобы вы могли видеть, как продукт работает на вас.
Если вы просто хотите выполнить компоновку сборок, есть также утилита ILMerge от Microsoft Research, которая свяжет несколько сборок .NET в одну сборку.
Я ищу автоматизированный способ. Я ожидаю, что компилятор/инструмент должен автоматически удалить функцию «foo», поскольку она не упоминается нигде в проекте. (позволяет предположить, что выбор не используется). – Palani
Вы пытаетесь оптимизировать производительность, память или просто размер установки? Удаление кода, который вы не вызываете, не поможет первым двум. – JohnFx