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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
rasweb
0 / 0 / 0
Регистрация: 19.05.2008
Сообщений: 28
#1

Как работать с dll? (Где ошибка?) - C++

19.05.2008, 15:49. Просмотров 938. Ответов 3
Метки нет (Все метки)

Ситуация: есть прога которая должна работать с функциями находящимися в dll. Сама DLL и lib написана другим человеком.

Прога: добавляется lib файл в проект.
Попытка вызвать функцию -> полное зависание системы.
После рассмотрения процессов в КПУ - такие результаты:
- загрузка dll - OK
- вызов функции -> зависание.

Вопрос: неправильная работа с dll или dll сама неправильно написана?
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.05.2008, 15:49
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Как работать с dll? (Где ошибка?) (C++):

Как работать с DLL - C++
Посоветуйти какую нить книгу по работе с Dll - файлами

Ошибка с msvcp120d.dll. Как создать Release? - C++
Перенес готовый консольный проект на другой компьютер и при запуске выдает такую ошибку Запуск программы не возможен, так как на...

Как экспортировать функцию из dll? У меня ошибка выдаётся - C++
Как экспортировать ф-ю из dll? У меня ошибка выдаётся

Как работает strcpy(), где ошибка - C++
Всем привет) Писал задачу, которая из 10 строк выводит самое короткое и первое в алфавитном порядке. Не понимаю почему не работает...

Перестает работать вывод в консоль в Release версии dll - C++
компилю dll в Release версию и после того как отключаю длл от проги и снова подключаю перестает работать вывод в консоль, хотя все...

Почему часть функций в KERNEL32.DLL может не загружаться/не работать - C++
Моё приложение загружает мою же DLL, которая, в свою очередь, использует c:windowssystem32KERNEL32.DLL Скажите пожалуйста, по какой...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
palva
2614 / 1836 / 263
Регистрация: 08.06.2007
Сообщений: 6,995
Записей в блоге: 4
19.05.2008, 18:10 #2
Возможно, здесь смешение двух технологий. Если к dll написана lib и файл заголовков .h, то загружать dll не нужно. Она грузится статически вместе с программой. Если dll загружается динамически, то тогда нужно получить адрес входа в функцию по ее алиасу или номеру входа и по этому адресу работать. lib в этом случае не используется.
0
Vita
Сообщений: n/a
20.05.2008, 10:10 #3
Возможно, здесь смешение двух технологий. Если к dll написана lib и файл заголовков .h, то загружать dll не нужно. Она грузится статически вместе с программой. Если dll загружается динамически, то тогда нужно получить адрес входа в функцию по ее алиасу или номеру входа и по этому адресу работать. lib в этом случае не используется.
Неверно! lib для dll используется: в ней описаны точки входов в dll.

Может быть есть несоответствие между dll, lib & h файлами.
Или debug/release несоответствие.
rasweb
0 / 0 / 0
Регистрация: 19.05.2008
Сообщений: 28
20.05.2008, 14:26  [ТС] #4
Vita -> Спасибо за совет. Как раз про Debug/Release я и не подумал....
Возможно что это так и есть.
Всем -> После долгих попыток - некоторые функции стали вызываться и работать - (простейшие - Пример: показать кнопку) , а вот на сложных уже виснет....
Будем продолжать - жду Ваших рекомендаций
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.05.2008, 14:26
Привет! Вот еще темы с ответами:

Как работает горизонтальная табуляция или где ошибка - C++
struct dbcars { char name; char color; int year; float cost; }; dbcars car;

Обьясните где ошибка , и как правильно писать программу! - C++
Дано натуральное число N и вещества х. Вычислить S=∑_(k=1)^N a_k,a_k=√(x^2+〖sin〗^2*k п/4) а вот уже пример из самого алгоритма...

Вывести на экран количество слов где первая и последняя буквы одинаковы (не понимаю где ошибка) - C++
задан текст нужно вывести на экран количество слов где первая и последняя буквы одинаковы #include <iostream> #include <conio.h> ...

Где найти исходник dll - C++
собственно сабж, нужен небольшой исходник любой dll в целях обучения, а то делаю свой dll а он работать не хочет :( ХЗ почему


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
20.05.2008, 14:26
Ответ Создать тему
Опции темы

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