Форум программистов, компьютерный форум CyberForum.ru

C++

Войти
Регистрация
Восстановить пароль
 
mcSHLANG
5 / 5 / 0
Регистрация: 04.04.2013
Сообщений: 44
#1

Вызов функции из dll - C++

31.08.2013, 00:06. Просмотров 653. Ответов 2
Метки нет (Все метки)

Доброго времени суток!
Пытаюсь вызвать функцию, которая находится в библиотеке следующим способом:

C++
1
2
3
4
5
HINSTANCE dllhandle = LoadLibrary((LPCWSTR)"avformat.dll");
void (*avRegistryAll)();
(FARPROC &) avRegistryAll = GetProcAddress(dllhandle, "av_register_all");
avRegistryAll();
FreeLibrary(dllhandle);
Функция "av_register_all" имеет следующую сигнатуру:

C++
1
void av_register_all();
Но при вызове в строчке avRegistryAll(); возникает необработанное исключение.

В чем может быть причина и как можно еще подключить библиотеку, если к ней не прилагаются .lib файлы?
Миниатюры
Вызов функции из dll  
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
31.08.2013, 00:06
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Вызов функции из dll (C++):

Альтернативный вызов функции - C++
1. Интересует метод вызова функции через указатель(или по другому). 2. Интересует метод взятия кол-ва аргументов функции и их типов, а...

Кто может поделиться файлами ogg.dll, vorbis.dll и vorbisfile.dll - 32-х и 64-битными версиями? - C++
Движок перевожу на платформу Win64 и нужно, чтобы разрядность ЕХЕ и DLL совпадали, а в интернете искал 64-битные версии ogg.dll, vorbis.dll...

Экспорт функции DLL - C++
Вечер добрый. Работаю над проектом, в котором из DLL экспортируются функции для другого проекта. Столкнулся с проблемой, что сначала была...

Список параметров функции из DLL - C++
В runtime загружаю DLL'ки, вывожу список функций содержащийся в них, но так и не нашёл вариантов как экспортировать типы аргументов и...

При компиляции DLL-проекта не создается DLL-ка - C++
Добрый день. создал в Visual Studio 2010 проект C+= типа DLL. В файл dllmain.cpp вставил вот такой код: // test.cpp: определяет...

Windows I/o без Kernel32.dll и Advapi32.dll - C++
Добрый день. Необходимо в Windows XP SP3 распечатать в стандартный поток "some text here" без прямого или косвенного использования...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Убежденный
Системный программист
Эксперт С++
15512 / 7010 / 1108
Регистрация: 02.05.2013
Сообщений: 11,442
Завершенные тесты: 1
31.08.2013, 00:39 #2
Цитата Сообщение от mcSHLANG Посмотреть сообщение
HINSTANCE dllhandle = LoadLibrary((LPCWSTR)"avformat.dll");
Неправильно. "avformat.dll" - это строка char-ов, а LPCWSTR - это указатель на wchar_t-строку.
Уверен, что LoadLibrary здесь возвращает NULL. И GetProcAddress тоже.

Цитата Сообщение от mcSHLANG Посмотреть сообщение
Функция "av_register_all" имеет следующую сигнатуру:
А соглашение о вызовах какое ? _cdecl, _stdcall ?
mcSHLANG
5 / 5 / 0
Регистрация: 04.04.2013
Сообщений: 44
04.09.2013, 13:26  [ТС] #3
Цитата Сообщение от Убежденный Посмотреть сообщение
Неправильно. "avformat.dll" - это строка char-ов, а LPCWSTR - это указатель на wchar_t-строку.
Уверен, что LoadLibrary здесь возвращает NULL. И GetProcAddress тоже.



А соглашение о вызовах какое ? _cdecl, _stdcall ?
Не знаю, как проверить?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.09.2013, 13:26
Привет! Вот еще темы с ответами:

Вызов функции DLL VB.NET в DLL C++ - C++ Builder
Как вызывать функции dll VB.NET через dll С++, которая приинжекчена к процессу проводника?

Вызов функции из DLL с AnsiString - C++ Builder
Можно ли вызывать функцию из dll, в качестве параметра которой будет AnsiString и возвращает значение AnsiString? CodeGuard ругается. Не...

Функции в Assembler, вызов функции в C++ - C++ Builder
Здравствуйте, я составил функции на языке Assembler и вставил ее в код на C++: extern "C" { int INCREMENT(int a); } _asm {...

Вызов функции - C++ Builder
В коде создания формы используется процедура: ... DrawSurface(A, B, C, T, drawpoint, X0, Y0, 10); ... Объявление DrawSurface ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru