2015-10-07 3 views
0

У меня есть проект визуальной студии, где я запрограммировал интерфейс для измерительной системы. Все проекты состоят из разных классов с файлами и реализациями заголовков. Когда я компилирую dll, мне нужен только главный заголовок, необходимый для использования dll.Скомпилировать определенные файлы заголовков в DLL (Visual Studio 2010 C++)

Пример:

MainClass.h 
HelperClassA.h 
HelperClassB.h 
AnotherClassA.h 
AnotherClassB.h 

MainClass.cpp 
HelperClassA.cpp 
HelperClassB.cpp 
AnotherClassA.cpp 
AnotherClassB.cpp 

Когда я компилирую MainClass.dll Я хочу только, чтобы доставить MainClass.h с DLL без других заголовков. Это возможно?

Далее я использую некоторые файлы заголовков форматированных библиотек, возможно ли также включить их в DLL, чтобы пользователь, использующий DLL, не должен был устанавливать boost или иметь файлы заголовков?

ответ

0

Когда я компилирую MainClass.dll, я хочу просто доставить MainClass.h с помощью dll без других заголовков. Это возможно?

Если ваш MainClass.h не содержит никаких заголовков, тогда это возможно. Это может иметь место, например, если другие те заголовки включены только в ваш файл MainClass.cpp.

Далее я использую некоторые файлы заголовков библиотеки подталкивание, это также можно включить их в DLL, так что пользователь с помощью библиотеки DLL не установить импульс или иметь файлы заголовков?

Для заголовочного заголовка, то же самое верно, как указано выше. Для любых связанных библиотек boost, я считаю, что можно включить статические библиотеки в вашу DLL. Я считаю, что включение DLL в другие DLL невозможно.

+0

Это звучит интересно, я дам ему попробовать завтра. Я уже создаю библиотеку boost как статическую библиотеку, только заголовки дали мне головную боль; –

+0

Понадобился время, чтобы проверить это, но он отлично работает. Я переместил весь заголовок sub-класса в файл main.cpp. То же самое с заголовками усиления. Просто нужно, чтобы статические ссылки некоторые из ускорения libs, но это работало отлично, а также. Большое спасибо! :) –