|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
11.09.2009, 16:46 | #1 |
-=PriZraK=-
Форумчанин
Регистрация: 12.12.2007
Сообщений: 399
|
Крах при выгрузке DLL
Доброе время суток уважаемые программисты!
Вот столкнулся с проблемой... Пишу DLL-ку,подключаю её в своей программе,вызываю форму из dll,форма ведёт себя адекватно,закрывается и открывается без ошибок. Но вот при закрытия окна программы из которой и вызывалась DLL, происходят ошибки сначала,что-то с Pointer, а затем run time error.... Вот код проги вызывающей функцию из dll: Код:
Код:
|
11.09.2009, 17:24 | #2 |
Участник клуба
Регистрация: 08.10.2007
Сообщений: 1,185
|
ShareMem следует писать первым в uses.
|
11.09.2009, 17:35 | #3 |
-=PriZraK=-
Форумчанин
Регистрация: 12.12.2007
Сообщений: 399
|
Somebody, не помогло....
|
11.09.2009, 17:53 | #4 |
Участник клубаДжуниор
Регистрация: 23.08.2008
Сообщений: 1,616
|
Попробуйте поставить брейк-поинты и отловить место с ошибкой
pushl $0x18E3DF6B
call ICQ |
11.09.2009, 18:03 | #5 |
-=PriZraK=-
Форумчанин
Регистрация: 12.12.2007
Сообщений: 399
|
russian-stalker, в программе всего 1-на строчка:
Код:
|
11.09.2009, 18:07 | #6 |
Участник клубаДжуниор
Регистрация: 23.08.2008
Сообщений: 1,616
|
Ну я длл отлаживал установив после каждой строчку Showmessage('Nomer strochki'); и после смотрел где программа стопорится(не сочтите за мазохиста, но по мне это очень быстрый способ).
pushl $0x18E3DF6B
call ICQ |
11.09.2009, 18:10 | #7 |
-=PriZraK=-
Форумчанин
Регистрация: 12.12.2007
Сообщений: 399
|
russian-stalker,нас уже два таких мазохиста))))))))))))
Делал так же,не помогло. |
11.09.2009, 18:53 | #8 |
Форумчанин
Регистрация: 12.08.2008
Сообщений: 135
|
1. sharemem надо писать первым
2. писать его в длл и в ПРОЕКТЕ, а не форме (Проект-показать исходный текст) 3. помимо написания в uses sharemem, надо еще с собой таскать BORLNDMM.DLL (лежит рядом с дельфи (папка BIN)) а чтоб не возникало таких ошибок, прочитайте комментарии, которые дельфи пишет при создании длл.
Будь проще, бери пример с одноклеточных
|
11.09.2009, 18:56 | #9 |
Телепат с дипломом
Старожил
Регистрация: 10.06.2007
Сообщений: 4,929
|
И я так отлаживал, можно клуб мазохистов открывать )
Еще как вариант, попробуй не из под отладчика запустить программу, т.е. не из под Дельфи. Бывает иногда ошибка именно из-за этого (в новых дельфях есть даже опция такая - запустить без отладки, и она там неспроста =). sharemem можно и вовсе не использовать, смотря как строки передавать.
The future is not a tablet with a 9" screen no more than the future was a 9" black & white screen in a box. It’s the paradigm that survives. (Kroc Camen)
Проверь себя! Онлайн тестирование | Мой блог Последний раз редактировалось mutabor; 11.09.2009 в 18:58. |
11.09.2009, 18:57 | #10 |
Участник клубаДжуниор
Регистрация: 23.08.2008
Сообщений: 1,616
|
Значит я не один такой
Сорри за флуд
pushl $0x18E3DF6B
call ICQ |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Загрузка dll при автозапуске ! | poster123 | Win Api | 5 | 05.08.2009 11:49 |
создание dll при старте приложения и удаление при завершении | TyoshA | Общие вопросы Delphi | 7 | 13.07.2009 13:56 |
Ошибка при загрузке dll | nikmay | Общие вопросы Delphi | 10 | 25.06.2009 15:42 |