Как создать 64-битный COM-прокси
У меня есть 32-битный COM-сервер (и исходный код для него) Источник генерирует сервер и 32-битную заглушку прокси. (Компилятор MIDL генерирует код заглушки прокси.)
Я хотел бы также создать 64-битный прокси, чтобы 64-битные программы могли общаться с моим 32-битным COM-сервером.
Как мне перейти к преобразованию 32-битного прокси в 64-битный прокси, который взаимодействует с 32-битным процессом? Я предполагаю, что просто перекомпилировать с /D:_M_AMD64 недостаточно.
1 ответ
Код прокси, сгенерированный компилятором MIDL, должен работать. Вам просто нужно построить 64-битную DLL из этого кода.
Убедитесь, что ваши типы определены правильно. Убедитесь, что вы избегаете таких типов, как UINT_PTR, которые не будут работать, когда 64-битный абонент вызывает 32-битный сервер.