Поиск:

Ответ в темуСоздание новой темы Создание опроса
> создание библиотеки, чтобы в другие проги можно было добавить 
V
    Опции темы
shara
Дата 29.11.2006, 21:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 344
Регистрация: 29.6.2004
Где: печенье?

Репутация: нет
Всего: 2



народ, подскажите ка как в Microsoft Visual C++ 6.0 создать библиотеку в которой будут содержаться функции. для дальнейшего их вызова в других прогах.


--------------------
   с точки зрения аэродинамики шмель не может летать  
PM MAIL   Вверх
Partizan
Дата 29.11.2006, 21:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Let's do some .NET
****


Профиль
Группа: Модератор
Сообщений: 2828
Регистрация: 19.12.2005
Где: Санкт-Петербург

Репутация: нет
Всего: 67



New Project -> DLL


--------------------
СУВ,
       Partizan.
PM MAIL WWW ICQ Skype GTalk Jabber   Вверх
Terrorist
Дата 29.11.2006, 22:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 6
Регистрация: 29.11.2006
Где: Пенза

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



И не забудь прописать новую функцию в таблице экспортируемых функций. Найдеш файлик *.def ,
там после слова EXPORT запишешь
        <имя функции> @п\п 

p.s.

Модератор: Пожалуйста, один топик - один вопрос.

Это сообщение отредактировал(а) Earnest - 30.11.2006, 09:32
PM MAIL   Вверх
shara
Дата 1.12.2006, 21:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 344
Регистрация: 29.6.2004
Где: печенье?

Репутация: нет
Всего: 2



библиотеку надо гдето дополнительно включать? или можно ее просто скопировать в папку с проектом или готовой программой программой?

и еще один вопросик, обращение к функциям из тела основной программы такоеже?

и что такое 
Цитата(Terrorist @  29.11.2006,  22:03 Найти цитируемый пост)
 @п\п
 ето две руских буквы П? помоему компилятор их непоймет smile 


Это сообщение отредактировал(а) shara - 1.12.2006, 21:08


--------------------
   с точки зрения аэродинамики шмель не может летать  
PM MAIL   Вверх
Любитель
Дата 3.12.2006, 15:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Программист-романтик
****


Профиль
Группа: Комодератор
Сообщений: 3645
Регистрация: 21.5.2005
Где: Воронеж

Репутация: 7
Всего: 92



Классический подход:
1. Создаём новую Win32 DLL.
2. В пропертях проекта добавляем в препроцессорные объявления что-то вроде MU_FIRST_DLL_BUILDING
3. Создаём какой-нибудь config.h, в нём пишем
Код

#ifdef MU_FIRST_DLL_BUILDING
#    define MY_FIRST_DLL_API __declspec(dllexport)
#else
#    define MY_FIRST_DLL_API __declspec(dllimport)
#endif

4. В хейдерах библиотеки инклюдим config.h.
5. Функции объявляем так:
Код

void MY_FIRST_DLL_API f();

6. В проект, юзающий либу в опции линкера в input добавляем my_first_dll.lib (по имени DLL)
7. Также добавляем additional lib directories - пути, где лежит наша либа (для дебаг - одно, для релиз - другое).
8. DLL копируем к бинарникам проекта.

Если проекты разрабатываем паралельно, то можно (да и вообщем-то нужно) копирование сделать как Post build event (через команду copy).


--------------------
PM MAIL ICQ Skype   Вверх
shara
Дата 4.12.2006, 21:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 344
Регистрация: 29.6.2004
Где: печенье?

Репутация: нет
Всего: 2



не доконца понял смысл 6 и 7 шага,  какая разница между файлами *.lib и *.dll?
зарание спасибо. smile 


--------------------
   с точки зрения аэродинамики шмель не может летать  
PM MAIL   Вверх
Любитель
Дата 5.12.2006, 18:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Программист-романтик
****


Профиль
Группа: Комодератор
Сообщений: 3645
Регистрация: 21.5.2005
Где: Воронеж

Репутация: 7
Всего: 92



lib - маленький файл, линкуемый статически, через который идёт вызов DLL-ных функций. Поставлять тебе его никуды не надо (в отличие от длл-ки).


--------------------
PM MAIL ICQ Skype   Вверх
shara
Дата 5.12.2006, 21:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 344
Регистрация: 29.6.2004
Где: печенье?

Репутация: нет
Всего: 2



все, я понял, вроде работае . большое спасибо.


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


 




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


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

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