Существует ли утилита для разделения единой сборки .NET на подмножество полной сборки? То есть «функциональный инверсный» ILMerge.exe?Существует ли ILSplit.exe, что эквивалентно ILMerge.exe или как это сделать?
Этот инструмент, конечно, будет трудно изготовить, если он должен отслеживать зависимости и т. Д. Между классами, функциями и т. Д.
Однако, я ищу для случая, когда у меня есть очень большая (сотни МБ) сборка смешанного режима, в основном статичные классы и статические методы, в основном просто библиотека функций. Хотя, с некоторой инициализацией DLLMain и аналогичной.
Что я хотел бы, так это указать список статических методов для определенных статических классов, которые я хочу сохранить в сборке подмножества. Технически это должно быть возможным, поскольку сборка - это просто двоичная информация со стандартизованным форматом.
Так ли это существует или как это можно сделать? Или почему это было бы непрактичным?
Похож на плохую идею. Как насчет того, если вы создадите проект P.exe, ссылающийся на A.Dll, но функция A была перенесена в B.dll? Вы должны реорганизовать DLL на уровне исходного кода один раз для всех, вместо того, чтобы настраивать это так. –
Да, конечно, это рекомендуемый подход, но по ряду причин было бы более целесообразно это делать потом. Из-за смешанного режима я предполагаю, что это будет чрезвычайно сложно сделать. Размер исходит от ссылки в массивных родных libs. Ваш комментарий также подразумевает, что у меня есть доступ к исходному коду. – nietras