| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Общие вопросы > Подключение C++ dll в delphi |
| Автор: SANCHO123 11.8.2010, 22:05 | ||||
| Здравствуйте! Есть dll на с++ в ней функция:
Подключаю в delphi, вызываю функцию:
В результате ошибка "Access violation at address 00000000. Read of address 00000000" Если сделать функцию без параметров, то ошибка не возникает. Что я делаю не правильно? |
| Автор: xkor 11.8.2010, 22:59 |
| GetProcAddress возвращает не ноль? функция точно экспортируется как "_start@0"? |
| Автор: SANCHO123 11.8.2010, 23:18 | ||||
Вот так работает:
Но мне нужно запускать функцию с параметрами. |
| Автор: bems 12.8.2010, 08:11 |
| Разберись с именем. Посмотри каким-нить РЕ-редактором/вьювером как на самом деле экспортируется |
| Автор: Alexeis 12.8.2010, 09:28 | ||
| Декоратор @0 не является универсальным и зависит от параметров. Для extern "C" __declspec(dllexport) int __stdcall start(int mode) Proc := GetProcAddress(h, '_start@4'); Добавлено через 2 минуты и 19 секунд Для удобства пользования я бы рекомендовал перебабахать имена экспортных функций в Dll, например при помощи def файла. типа
|
| Автор: SANCHO123 12.8.2010, 11:04 |
| Proc := GetProcAddress(h, '_start@4'); Так работает, большое спасибо |