Здравствуйте, Serginio1, Вы писали:
S> Передавать статические функции или ThisCall трудоемко.
Что значит передавать? Откуда-куда?
S>Проще общаться с нативом в разные стороны через абстрактные классы
Вот как раз и не проще.

Иногда проще через очень даже непрозрачные структуры, где клиент и сервер знает её внутренности. Вообще зависит, от того с какой стороны смотреть и/или какие проблемы решаются. Иногда гораздо проще opaque pointer + вся работа только через статические функции (импорты из длл).
И тут весь этот бред вокруг IUnknown я считаю лишним абсолютно. Далеко не проще через абстрактные.
Я ещё раз делаю акцент: решение зависит только от входящих требований: стабильное ABI, простое, C-совместимое, с или без символическим связыванием имен, пишем ли мы и клиент и сервер и т.п.
S> Так суть интерфейса это VMT. А классы с виртуальными методами кроссплатформенны.
S> В 1С это прекрасно работает
Мне показалось, что в другой ветке же ж разобрались как можно заставить эту кухню работать?