Я использую две коммерческие библиотеки, которые производятся одним и тем же поставщиком, называемые VendorLibA и VendorLibB. Библиотеки распределены как много DLL, которые зависят от версии компилятора (например, VC7, VC8). Обе библиотеки зависят от другой библиотеки, созданной этим вендором, называемой VendorLibUtils и содержащейся в одной DLL.
Проблема: VendorLibA использует другую версию VendorLibUtils, чем VendorLibB. Эти две версии не совместимы с бинарными версиями, и даже если бы это было, было бы плохой идеей использовать неправильную версию.
Можно ли использовать две библиотеки в одном и том же процессе?
Примечание: LoadLibrary не может решить эту проблему, поскольку мой процесс не тот, который импортирует VendorLibUtils.
РЕДАКТИРОВАТЬ: Забыв упомянуть очевидное, у меня нет исходного кода для какой-либо из коммерческих библиотек, и, вероятно, у меня никогда не будет (вздох).
EDIT: Альтернативный вариант: это Как объединить приложения GUI в Windows