Помогите прикомпоновать библиотеку
От: dmitry_npi Россия  
Дата: 14.11.08 13:52
Оценка:
Здравствуйте.
Есть dll, написанная на каком-то древнем борланд с++. Ее используют в Visual C++.
Из этой dll экспортируются функции, имеющие соглашение о вызове __stdcall.
Имена не декорированы (никак), видимо, использовался def-файл.

Сейчас функции из этой библиотеки грузятся через LoadLibrary, ибо lib файла нету.
Имеется описание этих функций в виде typedef, и все грузится и работает.

Хотелось бы прилинковать библиотеку неявно, и не грузить функции вручную.
Написал def-файл, сделал libю.
Но как объявить прототипы? Компилятор Visual C++, видя слово __stdcall, подставляет подчерк в начале и @56 в конце.

Возможно ли что-то сделать?
Атмосферная музыка — www.aventuel.net
Re: Помогите прикомпоновать библиотеку
От: degor Россия  
Дата: 14.11.08 15:16
Оценка:
Здравствуйте, dmitry_npi, Вы писали:


_>Но как объявить прототипы? Компилятор Visual C++, видя слово __stdcall, подставляет подчерк в начале и @56 в конце.


_>Возможно ли что-то сделать?


обернуть объявления в extern "C" {}?
Re[2]: Помогите прикомпоновать библиотеку
От: dmitry_npi Россия  
Дата: 15.11.08 10:03
Оценка:
Здравствуйте, degor, Вы писали:

D>обернуть объявления в extern "C" {}?


Обернул, конечно. Но это спасает только от жуткого С++ декорирования. Но компилятор декорирует также и С-функции, объявленные как __stdcall.
Атмосферная музыка — www.aventuel.net
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.