Форум программистов, компьютерный форум, киберфорум
Visual Basic
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
28 / 27 / 7
Регистрация: 11.06.2011
Сообщений: 387

Падение программы при вызове функции из DLL

31.10.2012, 09:12. Показов 1178. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Есть код на C++
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#ifdef __WIN32__
#define MY_EXPORT __declspec(dllexport)
#else
#define MY_EXPORT
#endif
 
 
extern "C" MY_EXPORT char* getName(){
    return (char*)"simple sample plugins";
}
 
extern "C" MY_EXPORT char* getAvtor(){
    return (char*)"test";
}
 
extern "C" MY_EXPORT char* getDesc(){
    return (char*)"Пример написания плагина";
}

Использую функции такой код
Visual Basic
1
2
3
4
5
6
7
8
9
10
Private Declare Function getName Lib "sample.dll" () As String
Private Declare Function getAvtor Lib "sample.dll" () As String
 
Private Sub Command1_Click()
   Label1.Caption = getName()
End Sub
 
Private Sub Command2_Click()
   Label2.Caption = getAvtor()
End Sub
При нажатии Command1_Click, в label1 всё нормально отображается. При нажатии Command2_Click программа крашится (если через IDE запускать, то и IDE тоже)

Сообщение типа такого, только моё приложение написано)



В чем может быть проблема ?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
31.10.2012, 09:12
Ответы с готовыми решениями:

Падение программы при вызове QImage::color(int x) const
При выполнении данной строчки кода, программа ложится QRgb temp; temp = image.color(j); Пересмотрел документацию, не понимаю в чем...

Падение приложения при вызове функции из обработчика
Я слушаю Ком порт вот так mySerialPort.DataReceived += new SerialDataReceivedEventHandler(DataReceivedHandler); когда с него приходит...

Исключение при вызове функции из DLL
При вызове функции инициализации получаю все время следующую ошибку: Мне кажется, что или я выбрал неверный метод вызова или проблема...

2
 Аватар для Pro_grammer
6807 / 2839 / 527
Регистрация: 24.04.2011
Сообщений: 5,308
Записей в блоге: 10
31.10.2012, 09:50
Цитата Сообщение от admsasha Посмотреть сообщение
При нажатии Command2_Click программа крашится
Что то я не увидел отличий. А менять местами пробовали
По идее и первый вызов не должен работать. Обычно в DLL не строку передают, а указатель на строку (массив байт). Вначале надо зарезервировать строковую переменную нужной длины, а потом ей присвоить уже этот массив байт.
Почитайте по теме VB и возврат строки из DLL.
Цитата Сообщение от admsasha Посмотреть сообщение
Сообщение типа такого
От этого сообщения яснее не стало. Вы бы лучше расшифровку отчета показали.
0
28 / 27 / 7
Регистрация: 11.06.2011
Сообщений: 387
01.11.2012, 04:29  [ТС]
Пробовал, работает то, что стоит вначале. Через инициализацию переменной тоже пробовал передавать, тоже самое. Но если передают одинаковые значения, то обе функции работают без проблем.

От этого сообщения яснее не стало. Вы бы лучше расшифровку отчета показали.
Это ?
Миниатюры
Падение программы при вызове функции из DLL  
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
01.11.2012, 04:29
Помогаю со студенческими работами здесь

Ошибка при вызове функции из dll
Здравствуйте уважаемые программисты! Создал функцию, по обычному все отлично работает, а когда заношу ее в dll, выдает ошибку! Код dll:...

Ошибка при вызове функции из dll в С#
HElp! сама dll вроде как подключена(метод meth2 работает) но при попытке обращения к GaussMethod сообщение об ошибке "Attempted to...

SIGSEGV при вызове функции из dll
Здравствуйте. Вообщем имею такую траблу: Некая функция DLL принимает в качестве аргумента ссылку на QStringList и выполняет некоторые...

Падение производительности в 25 раз и ошибка функции при использовании DLL
Написал на С++(сами функции на ассемблере с помощью вставки) библиотеку DLL. Вызываю функцию из VB.NET. Замеряю скорость относительно такой...

Не заполняется структура, при вызове функции из dll.
Здравствуйте. Возникла такая ситуация. Хочу подцепить dllку в проект borland c++ builder 6, которая работает в проекте visual c++ 6. ...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит переходные токи и напряжения на элементах схемы. . . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru