Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как засунуть свой класс в DLL, создание DLL 
:(
    Опции темы
Andrey44
Дата 3.8.2007, 17:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1501
Регистрация: 4.12.2006
Где: На работе

Репутация: 12
Всего: 26



Подскажите пожалуйста как вставить свой класс в DLL 

и потом в программе создавать объекты этого класса и пользоваться его методами?

Все как обычно описывается в заголовочном файле или как-то по-другому? smile 


--------------------
????? ??, ??????? ?????.  smile 
PM MAIL WWW ICQ   Вверх
Earnest
Дата 3.8.2007, 19:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 5962
Регистрация: 17.6.2005
Где: Рязань

Репутация: 87
Всего: 183



Все как обычно. Только класс нужно из DLL экспортировать, а в другие модули - импортировать.
Для экспорта нужно объявить класс как __declspec(dllexport), а для импорта - как __declspec(dllimport).

Удобне всего делать так:
1) заводим специальный заголовочный файл, допустим, MyDll.h примерно с таким содержимым:
Код

#ifdef _MYDLL
   #define MY_API __declspec(dllexport)
#else
   #define MY_API __declspec(dllimport)
#endif


2) Во все экспортируемые классы (в заголовки, где они определены) добавляем MyDll.h
При этом объявления классаов и функций выглядят так:

Код

class MY_API SomeClass
{

};

MY_API void SomeGlobalFunc (int);

3) В свойствах проекта MyDll определяем макросимвол _MYDLL

4) Клиентское приложение для доступа к классам и функциям использует те же самые заголовки...


--------------------
...
PM   Вверх
Andrey44
Дата 4.8.2007, 08:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1501
Регистрация: 4.12.2006
Где: На работе

Репутация: 12
Всего: 26



Спасибо Earnest буду пробовать. smile 

Но думаю будут ещё вопросы smile  smile 


--------------------
????? ??, ??????? ?????.  smile 
PM MAIL WWW ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Visual C++/MFC/WTL | Следующая тема »


 




[ Время генерации скрипта: 0.0425 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.