Я не слишком информирован о суррогатном COM, на который вы ссылаетесь, но я решил эту проблему (используя 32-битную dll из 64-битного exe), введя COM-объект посередине:
32.dll <-> 32bit-out-of-process-com-server.exe <-> 64.exe.
Извините, это может быть то, что вы имеете в виду под 32.com, не уверен, но убедитесь, что промежуточныйCOM-объект живет в .exe (вне процесса), а не в DLL.Это по той же причине, по которой вы не можете загрузить исходный файл 32.dll в 64-битный процесс.