Модераторы: Poseidon, Snowy, bems, MetalFan

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> runtime error 216 at 5b261531 в dll при завершении 
:(
    Опции темы
Volkogriz
  Дата 10.2.2013, 18:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 216
Регистрация: 16.9.2007

Репутация: 1
Всего: 1



Доброе время суток!
Всё в принципе работает но При завершении приложения вылетает ошибка,runtime error 216 at 5b261531
я перерыл всё но так и не понял что не так?
длл пока пустая практически,
Код

library DBDLL;

uses
  ShareMem,Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ExtCtrls,
  IdHTTP;

//{$R *.res}


Function SplashFormS(Reference:String; IdleTime:integer):Boolean; stdcall;
var
  SplashForm: TForm;
  SplashImage: TImage;
begin
  SplashForm := TForm.create(nil);
  with SplashForm do
  begin
    BorderStyle := bsNone;
    Position := poScreenCenter;
    ClientWidth :=700; //Screen.Width
    ClientHeight :=450;// Screen.Height
   end;
    SplashImage := TImage.Create(SplashForm);
  with SplashImage do
    begin
   SplashImage.Picture.LoadFromFile(extractfilepath(Application.ExeName)+Reference);
    Stretch := true;
    Align := alClient;
    Parent := SplashForm;
    end;
  with SplashForm do
   begin
     Show;
      begin
      Repaint;
       Sleep(IdleTime);
      end;
     Close;
     Free;
   end;
 end;
exports SplashFormS;


Function Communication(const Reference:String):String; stdcall;
var
 Stream:TMemoryStream;
 url,r:WideString;
 i,j:integer;
 Prices:TIdHTTP;
 List:TStringList;
 begin
Prices:=TIdHTTP.Create(Prices);
Stream:=TMemoryStream.Create;
List:=TStringList.Create;
BEGIN
    try
List.LoadFromFile('Relocation.id');
url:= Reference; //ññûëêà íà íîâóþ âåðñèþ
//List.Strings[0]; //ññûëêà íà íîâóþ âåðñèþ
 for i:=1 to length(url) do
 begin
 if url[i]='.' then
 begin
 j:=i;
 end;
 end;
 r:=copy(url,j+1,length(url));
 Prices.Get(url,Stream);
 Stream.SaveToFile('DB\PricesDB.DB'); //ïóòü è íàçâàíèå êóäà ñîõðàíÿåì
 Stream.Free;
 except
      on e:Exception do
      Stream.Free; End;
      Communication:='Îáíîâëåíèå çàâåðøèíî'
End;
End;
exports Communication;

begin
end.

Но по пойму ошибка здесь но где именно не пойму:
Код


Function SplashFormS(Reference:String; IdleTime:integer):Boolean; stdcall;
var
  SplashForm: TForm;
  SplashImage: TImage;
begin
  SplashForm := TForm.create(nil);
  with SplashForm do
  begin
    BorderStyle := bsNone;
    Position := poScreenCenter;
    ClientWidth :=700; //Screen.Width
    ClientHeight :=450;// Screen.Height
   end;
    SplashImage := TImage.Create(SplashForm);
  with SplashImage do
    begin
SplashImage.Picture.LoadFromFile(extractfilepath(Application.ExeName)+Reference);
    Stretch := true;
    Align := alClient;
    Parent := SplashForm;
    end;
  with SplashForm do
   begin
     Show;
      begin
      Repaint;
       Sleep(IdleTime);
      end;
     Close;
     Free;
   end;
 end;
exports SplashFormS;

Помогите разобраться.
За ранее благодарен.
С уважением,
Volkogriz! 
--------------------
("`-''-/").___..--''"`-._`6_6  ) ,,,`-.  ( ''' ).` "_-.__.')(_Y_.)'  ._''' )  `._ `. ``-.__'.-'_..`--'_..-_/'''/--'_.' ,'(il).-'''''(li).'  ((!.-'
PM MAIL ICQ   Вверх
DarkProg
Дата 10.2.2013, 19:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Законченный романтик
***


Профиль
Группа: Завсегдатай
Сообщений: 1784
Регистрация: 11.3.2009
Где: Земля

Репутация: 2
Всего: 19



Ставлю на ShareMem smile
А если по серьёзному, просто загрузите и выгрузите библиотеку, и затем закройте приложение, будет ли ошибка или нет?


P.S. на неделе как раз накололся с ShareMem. Всё, больше не буду использовать эту каку. Симптом схож(только у меня при закрытии формы как раз при выгрузке библиотеки вылетал инвалидный указатель и всё, дальше использовать данный класс формы было невозможно, помогло отключение ShareMem и затем двухчасовое переписывание библиотеки)


--------------------
"И твоя голова всегда в ответе за то куда сядет твой зад..."

"Я студент - скажите с какого я ВУЗа..."

 smile  smile  smile 
PM MAIL   Вверх
Volkogriz
Дата 10.2.2013, 20:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 216
Регистрация: 16.9.2007

Репутация: 1
Всего: 1



 ставил в начале ShareMem потом убрал)
Выгружаю но ошибка та же.
Переписывать слава богу 2 секунды)
но при добавлении этого ошибка(
Код

Function SplashFormS(Reference:String; IdleTime:integer):Boolean; stdcall;
var
  SplashForm: TForm;
  SplashImage: TImage;
begin
  SplashForm := TForm.create(nil);
  with SplashForm do
  begin
    BorderStyle := bsNone;
    Position := poScreenCenter;
    ClientWidth :=700; //Screen.Width
    ClientHeight :=450;// Screen.Height
   end;
    SplashImage := TImage.Create(SplashForm);
  with SplashImage do
    begin
SplashImage.Picture.LoadFromFile(extractfilepath(Application.ExeName)+Reference);
    Stretch := true;
    Align := alClient;
    Parent := SplashForm;
    end;
  with SplashForm do
   begin
     Show;
      begin
      Repaint;
       Sleep(IdleTime);
      end;
     Close;
     Free;
   end;
 end;
exports SplashFormS;  

--------------------
("`-''-/").___..--''"`-._`6_6  ) ,,,`-.  ( ''' ).` "_-.__.')(_Y_.)'  ._''' )  `._ `. ``-.__'.-'_..`--'_..-_/'''/--'_.' ,'(il).-'''''(li).'  ((!.-'
PM MAIL ICQ   Вверх
DarkProg
Дата 10.2.2013, 22:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Законченный романтик
***


Профиль
Группа: Завсегдатай
Сообщений: 1784
Регистрация: 11.3.2009
Где: Земля

Репутация: 2
Всего: 19



Цитата(Volkogriz @  10.2.2013,  20:04 Найти цитируемый пост)
но при добавлении этого ошибка(

Просто от того что добавляете процедуру или от того используете ее?

Добавлено через 52 секунды
Цитата(Volkogriz @  10.2.2013,  20:04 Найти цитируемый пост)
ереписывать слава богу 2 секунды)

Ну выключить то да две секунды )


--------------------
"И твоя голова всегда в ответе за то куда сядет твой зад..."

"Я студент - скажите с какого я ВУЗа..."

 smile  smile  smile 
PM MAIL   Вверх
Volkogriz
Дата 10.2.2013, 22:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 216
Регистрация: 16.9.2007

Репутация: 1
Всего: 1



если просто добавил в длл-ку скомпилировал, запускаю, закрываю и тут бац и ошибка)
Вынимаю функцию компилирую и опять ошибка блин smile
Пере запускаю проект с сохранённой копии и всё ок.
ну и по кругу так ;) 
--------------------
("`-''-/").___..--''"`-._`6_6  ) ,,,`-.  ( ''' ).` "_-.__.')(_Y_.)'  ._''' )  `._ `. ``-.__'.-'_..`--'_..-_/'''/--'_.' ,'(il).-'''''(li).'  ((!.-'
PM MAIL ICQ   Вверх
northener
Дата 11.2.2013, 00:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1361
Регистрация: 2.9.2010

Репутация: 8
Всего: 20



Цитата(Volkogriz @  10.2.2013,  20:04 Найти цитируемый пост)
 ставил в начале ShareMem

Как ставил ShareMem в dll видно в приведенном коде. А как ставил ShareMem в проекте использующем эту dll?


--------------------
Но только лошади летают вдохновенно.
Иначе лошади разбились бы мгновенно!
PM MAIL   Вверх
Volkogriz
Дата 11.2.2013, 00:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 216
Регистрация: 16.9.2007

Репутация: 1
Всего: 1



В том же порядке )
и ещё, убираю модуль  ExtCtrls всё ок! 
но без него никак, использую Image .
--------------------
("`-''-/").___..--''"`-._`6_6  ) ,,,`-.  ( ''' ).` "_-.__.')(_Y_.)'  ._''' )  `._ `. ``-.__'.-'_..`--'_..-_/'''/--'_.' ,'(il).-'''''(li).'  ((!.-'
PM MAIL ICQ   Вверх
bems
Дата 11.2.2013, 02:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 3400
Регистрация: 5.1.2006

Репутация: 31
Всего: 88



Цитата(Volkogriz @  10.2.2013,  20:04 Найти цитируемый пост)
     Close;
     Free;

Close может означать и Free, зависит от CloseAction в обработчике
нет ли тут двойного освобождения?


--------------------
Обижено школьников: 8
PM MAIL   Вверх
Volkogriz
Дата 11.2.2013, 12:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 216
Регистрация: 16.9.2007

Репутация: 1
Всего: 1



Я методом научного тыка выяснил,
Ставишь модуль даже без кода в длл ку ExtCtrls и вылетает ошибка ( 
--------------------
("`-''-/").___..--''"`-._`6_6  ) ,,,`-.  ( ''' ).` "_-.__.')(_Y_.)'  ._''' )  `._ `. ``-.__'.-'_..`--'_..-_/'''/--'_.' ,'(il).-'''''(li).'  ((!.-'
PM MAIL ICQ   Вверх
northener
Дата 11.2.2013, 15:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1361
Регистрация: 2.9.2010

Репутация: 8
Всего: 20



Цитата(Volkogriz @  11.2.2013,  00:53 Найти цитируемый пост)
В том же порядке )

А где именно? Надеюсь в файле проекта (dpr)?


--------------------
Но только лошади летают вдохновенно.
Иначе лошади разбились бы мгновенно!
PM MAIL   Вверх
Volkogriz
Дата 11.2.2013, 19:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 216
Регистрация: 16.9.2007

Репутация: 1
Всего: 1



неа)
В pas-е smile
но и dpr не помогает(

Это сообщение отредактировал(а) Volkogriz - 11.2.2013, 19:17
--------------------
("`-''-/").___..--''"`-._`6_6  ) ,,,`-.  ( ''' ).` "_-.__.')(_Y_.)'  ._''' )  `._ `. ``-.__'.-'_..`--'_..-_/'''/--'_.' ,'(il).-'''''(li).'  ((!.-'
PM MAIL ICQ   Вверх
northener
Дата 11.2.2013, 19:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1361
Регистрация: 2.9.2010

Репутация: 8
Всего: 20



Цитата(Volkogriz @  11.2.2013,  19:12 Найти цитируемый пост)
неа)
В pas-е

В pas-е как раз не нужно. Нужно именно в dpr! 


--------------------
Но только лошади летают вдохновенно.
Иначе лошади разбились бы мгновенно!
PM MAIL   Вверх
Keeper89
Дата 11.2.2013, 23:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2580
Регистрация: 26.2.2009

Репутация: 20
Всего: 58



А обойтись без SharedMem и сделать "нормальную" dll нельзя?


--------------------
PM MAIL WWW   Вверх
northener
Дата 12.2.2013, 01:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1361
Регистрация: 2.9.2010

Репутация: 8
Всего: 20



Цитата(Keeper89 @  11.2.2013,  23:28 Найти цитируемый пост)
А обойтись без SharedMem и сделать "нормальную" dll нельзя?

А это, пардон, как?
И что значит "нормальную"?


--------------------
Но только лошади летают вдохновенно.
Иначе лошади разбились бы мгновенно!
PM MAIL   Вверх
DarkProg
Дата 12.2.2013, 10:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Законченный романтик
***


Профиль
Группа: Завсегдатай
Сообщений: 1784
Регистрация: 11.3.2009
Где: Земля

Репутация: 2
Всего: 19



Цитата(northener @  12.2.2013,  01:05 Найти цитируемый пост)
А это, пардон, как?
И что значит "нормальную"? 

А это работая только вчистую с памятью, ну либо используя исключительно те типы данных которые понимает винда по наитию. И создавая dll по канонам виндоуса, чтобы потом можно было и к проекту на других ЯП подтянуть.

IMHO как-то так smile


--------------------
"И твоя голова всегда в ответе за то куда сядет твой зад..."

"Я студент - скажите с какого я ВУЗа..."

 smile  smile  smile 
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Общие вопросы"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1259 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.