VB6 ... давно. Вот как я это помню:
Перерегистрацию необходимо выполнять только при изменении двоичного интерфейса. Если я правильно помню, в проекте есть флажок для сохранения бинарной совместимости. Если вы проверите это, ключевые вещи, которые регистрируются, такие как progid и classid, не изменяются без необходимости, и я считаю, что VB6 использует так называемую переадресацию интерфейса для регистрации нового интерфейса поверх любого предыдущего интерфейса, если вы не -разрушение изменений в ваших интерфейсах (например, добавление параметра в существующий метод, но не удаление существующего параметра).
Если вы добавили новые методы или расширили существующие методы совместимым образом, существующая регистрация по-прежнему не будет знать о них, поэтому вам придется повторно зарегистрироваться, чтобы выставить их.