Вы можете рассмотреть возможность использования инструмента миграции, способного обработать полное преобразование.См. Какие типы шаблонов я могу применить в коде, чтобы упростить перевод на другой язык программирования? .
Используемый механизм DMS имеет полные парсеры для VB6 и Visual C ++ и можетприменять правила преобразования, которые отображают синтаксис поверхности VB6 в синтаксис поверхности Visual C ++.
Кто-то должен написать правила перевода, и их нужно написать много;вам нужен один для каждой языковой конструкции и контекста, в котором это может произойти.Это означает, что в вашем случае вам потребуются специальные правила для создания перевода в виде DLL, а не .exe, если это реальное требование.Написание таких правил сложнее, чем кажется, в основном из-за числа, которое нужно написать, обычно порядка 1000-2000;это не для слабонервных.Но он может производить очень надежных переводчиков (подробности читайте в ответе по ссылке).
Вы не сказали, что такое "куча кода".В меньших масштабах вы можете использовать больше специальных подходов (ручной перевод, исправление вывода плохого переводчика (например, того, который вы обсуждали) и т. Д.).При достаточном масштабе автоматизированное преобразование является эффективным подходом.