У меня есть проект визуальной студии под названием MyKinectDll, который я компилирую как DLL. У меня есть другой проект под названием MyKinectApp, который является исполняемым. Я имею их в одном решении. Я добавил зависимость от MyKinectApp к MyKinectDll. Я добавил ссылку от MyKinectApp на MyKinectDll. Я добавил местоположение MyKinectDll в дополнительные каталоги включения MyKinectApp. Затем в моем коде я добавил #include «MyKinect.h», который является одним из заголовков в MyKinectDll, и он распознается. Но когда я компилирую, только MyKinectDll строит успешно, и я получаю ошибки в MyKinectApp, жалующиеся на отсутствие файлов заголовков. Эти файлы заголовков вызывается в MyKinect.h и присутствуют в другом месте MyKinectDll и правильно строятся сами по себе.Добавление DLL как статической библиотеки в Visual C++
Я не уверен, что мне нужно связать с .lib MyKinectDll в настройках компоновщика, но я попробовал, и я получаю ту же ошибку. Что я делаю не так?
Большое спасибо за помощь.
Какие версии Visual Studio являются вы используете? Вы использовали '__declspec (dllexport)' для экспорта DLL-функций/классов из dll? –
Вам нужно добавить расположение всех заголовков, используемых MyKinect.h, в Дополнительные каталоги Include для проекта MyKinectApp. – StevieG
@StevieG, который решил это; Спасибо. Однако я не понимаю, зачем нужен этот шаг. Разумеется, dll должен стоять один и не требовать ссылки на ссылки в основном приложении? Я имею в виду, если я использую системную dll, я не беспокоюсь о включении всех путей, на которые у нее есть ссылки, не так ли? –