Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для компьютеров > C++

Ответ
 
Опции темы
Старый 10.04.2010, 18:55   #1
Coks
Знающий
 
Регистрация: 29.05.2007
Сообщений: 227
Написано 126 полезных сообщений
(для 312 пользователей)
dll глючит в Блице

Странная штука обнаружилась. Создал длл (VC 2008 EE) как учили. В библиотеке одна функция, которая принимает 2 числа и возвращает их сумму. В блице ставлю эту функцию в цикл рендеринга и получаю утечку памяти, а после где-то через пол минуты окно закрывается само по себе.

Последний раз редактировалось Coks, 10.04.2010 в 21:09.
(Offline)
 
Ответить с цитированием
Старый 10.04.2010, 21:48   #2
Mr_F_
Терабайт исходников
 
Аватар для Mr_F_
 
Регистрация: 13.09.2008
Сообщений: 3,947
Написано 2,189 полезных сообщений
(для 6,051 пользователей)
Ответ: dll глючит в Блице

код не покажешь?
__________________
бложик | geom.io | твиттер | faded | демо 1 2 | роботы | лайтмаппер
(Offline)
 
Ответить с цитированием
Старый 11.04.2010, 14:46   #3
Alex.D.
Оператор ЭВМ
 
Регистрация: 02.11.2008
Сообщений: 27
Написано 12 полезных сообщений
(для 24 пользователей)
Ответ: dll глючит в Блице

Вероятно это из-за переполнения стека. Для блица нужно чтобы функции имели stdcall соглашение о вызове, т.е. сами сдвигали стек, а у тебя наверное cdecl.
После extern "C" _declspec(dllexport) ставь _stdcall.
(Offline)
 
Ответить с цитированием
Эти 2 пользователя(ей) сказали Спасибо Alex.D. за это полезное сообщение:
ABTOMAT (11.04.2010), Coks (11.04.2010)
Старый 11.04.2010, 23:21   #4
Coks
Знающий
 
Регистрация: 29.05.2007
Сообщений: 227
Написано 126 полезных сообщений
(для 312 пользователей)
Ответ: dll глючит в Блице

Alex.D., большое спасибо!
Итак, чтоб нормально экспортировать функцию делаем так:
extern "C" __declspec(dllexport) int _stdcall namefunction(int variable)
или _stdcall заменяем на CALLBACK.

в деклзе для блица пишем так:
namefunction%(variable%) : "_namefunction@4"
последняя цифра это сумма переменных в байтах, передаваемых в функцию.

Последний раз редактировалось Coks, 16.04.2010 в 00:18.
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
LLI.T.A.L.K.E.R. (23.05.2010)
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +4, время: 13:55.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com