Как использовать код двух DLL из третьей в C? - PullRequest
1 голос
/ 18 августа 2010

У меня есть два dll's a.dll и b.dll вместе с их библиотечными файлами a.lib и b.lib. Я пытаюсь написать третий DLL, который имеет функции, которые должны использовать функции в a.dll и b.dll.

Возможно ли это вообще?

Выход должен быть dll сам по себе - это абсолютное требование.

У меня есть полный исходный код C.

1 Ответ

0 голосов
/ 20 мая 2011

'Возможно ли это вообще?'

Короче говоря, да.Библиотеки DLL могут содержать ссылки на другие библиотеки DLL так же, как и файлы EXE.Вы не говорите, какой компилятор используется, но, вероятно, «lib» содержит библиотечные ссылки на DLL.Поэтому вам нужно добавить эти библиотеки в конфигурацию компоновщика для вашей новой DLL.

Обычно вы ссылаетесь на прототипы любых функций из других DLL через их заголовочные файлы (хотя вы можете создать их снова, это кажетсяне нужно, так как вы говорите, что у вас есть код), опять же, это то же самое, как если бы вы использовали DLL из EXE-файла.

Вам необходимо убедиться, что все три DLL развернуты вместе, так как новая DLLссылается на существующие, он не берет копию функций в себя.

...