Имеется exe файл со статически прилинкованной библиотекой Visual C++ redistributable, как вырезать её код из exe и заменить на импорт из dll?
Доброго времени суток.
Потребовалась вот такая экзотическая задача, с учётом того, что библиотеки VC++ даже для разработчиков распространяются предкомпилированными, то в теории никаких проблем возникнуть не должно.
Суть вопроса заключается в том, что, возможно, есть какой то готовый инструмент, которому можно подсунуть оба файла и он сам всё разгребёт.
Вопрос задаётся в связи с тем, что я хоть и понимаю как всё это сделать, но очень лень писать подобный механизм самому.
А для чего конкретно это нужно?
Если при компиляции использовались LTCG и PGO, то подменить статику может в принципе не получится. Оптимизатор мог так код похерить, что CRT в нём и не распознаешь даже вручную. Или часть функций будет вызываться из dll, а часть останется статически скомпонованной и разбросанной по всему коды. Проблем не оберётесь.