Windows: Как получить типы из DLL, которые могут не существовать? - PullRequest
1 голос
/ 03 августа 2010

Я пишу код, который требует DLL, которая существует только в Windows 7. Однако я буду развертывать на старых платформах, поэтому я хочу использовать DLL, если она существует в системе пользователя.

Я могу использовать LoadLibrary() для получения HMODULE и GetProcAddress() для получения методов из этого HMODULE. Это позволяет мне получить метод, и он все еще будет компилироваться. Но как мне объявить тип структуры или класса, определенный в этой DLL, и скомпилировать его?

1 Ответ

0 голосов
/ 03 августа 2010

Как правило, вы будете знать, какие методы вы используете, и у вас будет файл заголовка с типами, которые вам нужны.Вам просто нужно определить указатели fn, которым вы можете назначить возврат getprocaddress.Если у вас нет заголовочного файла или какой-либо документации, находящейся в Discovery Land, вам нужно будет экспериментировать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...