DllGetClassObject не экспортируется (поэтому никогда не вызывается и интерфейс не обнаруживается)

Я пытаюсь написать COM-сервер и клиент. Когда я звоню CoCreateInstance(), COM Engine, как ожидается, позвонит DllGetClassObject(), но, кажется, он никогда не вызывается (я поставил простое окно сообщения перед всеми другими функциями, поэтому я уверен, что он не вызывается).

При дальнейшей проверке я обнаружил, что она не экспортируется. Я проверил это с помощью Dumpbin /EXPORTS

Мой файл определения

LIBRARY ClassFactoryServer
EXPORTS
    DllGetClassObject   @100     PRIVATE
    DllCanUnloadNow     @101     PRIVATE

Я не знаю, почему они не экспортируются. Я не могу использовать __declspec(dllexport) по известной причине, есть другой способ использования #pragma но я вполне готов написать .def файл, но не знаю, почему функции не экспортируются.

0 ответов

Другие вопросы по тегам