DllGetClassObject не экспортируется (поэтому никогда не вызывается и интерфейс не обнаруживается)
Я пытаюсь написать COM-сервер и клиент. Когда я звоню CoCreateInstance()
, COM Engine, как ожидается, позвонит DllGetClassObject()
, но, кажется, он никогда не вызывается (я поставил простое окно сообщения перед всеми другими функциями, поэтому я уверен, что он не вызывается).
При дальнейшей проверке я обнаружил, что она не экспортируется. Я проверил это с помощью Dumpbin /EXPORTS
Мой файл определения
LIBRARY ClassFactoryServer
EXPORTS
DllGetClassObject @100 PRIVATE
DllCanUnloadNow @101 PRIVATE
Я не знаю, почему они не экспортируются. Я не могу использовать __declspec(dllexport)
по известной причине, есть другой способ использования #pragma
но я вполне готов написать .def
файл, но не знаю, почему функции не экспортируются.