Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

DLL: что есть .def ?

6.4K
16 марта 2004 года
Walker
11 / / 16.03.2004
Здравствуйте, господа!
Столкнулся с проблемой:
пишу ДЛЛ(первый раз), в числе функций - void CenterObject(void); линкер искажает имена, получается ?CenterObject@@YAXXZ - как следствие трудно читать код, да и не уверен, что ДЛЛ,написанные на других платформах вобще будут работать... :(
Читал, что можно исправить имя в файле .def (что-то типа Center = ?CenterObject@@YAXXZ ), но мой VC6, по моему, .def не создаёт.
Вобщем, нужен совет: как присвоить экспортируемым ДЛЛ функциям "человеческие имена"
3.2K
16 марта 2004 года
srd
50 / / 31.08.2003
Цитата:
да и не уверен, что ДЛЛ,написанные на других платформах вобще будут работать...


Будет.

Если вы используете только __declspec(dllexport)/__declspec(dllimport) и не планируете использовать LoadLibrary/GetProcAddress, то почему бы и нет? В исходниках всё равно используются нормальные имена.

Можно обойтись без DEF файла и писать так.

 
Код:
extern "C" void __declspec(dllexport) void CenterObject(void)
{
}


А для использования DEF файла просто добавьте в проект обычный текстовый файл с расширением DEF, и напишите в нем
 
Код:
LIBRARY mydll
EXPORTS
    CenterObject

Всё.
6.4K
16 марта 2004 года
Walker
11 / / 16.03.2004
М-да, оперативно! :)
Цитата:
Originally posted by srd

Если вы используете только __declspec(dllexport)/__declspec(dllimport) и не планируете использовать LoadLibrary/GetProcAddress, то почему бы и нет?



Планирую... сорри - зыбыл написать, непременное условия - явный вызов ДЛЛ.


Цитата:
Originally posted by srd

А для использования DEF файла просто добавьте в проект обычный текстовый файл с расширением DEF, и напишите в нем
 
Код:
LIBRARY mydll
EXPORTS
    CenterObject

Всё.



Большое спасибо за ответ!, пошёл юзать...

6.4K
16 марта 2004 года
Walker
11 / / 16.03.2004
Всё работет, ещё раз большое спасибо то srd, удачи.
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог