![]() |
|
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]()
|
|
| Gershkovich |
|
||||||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 243 Регистрация: 8.2.2006 Репутация: 0 Всего: 2 |
Всем привет!
У меня такая ситуация : В DLL формирую строку - выделяю память через HeapAlloc, заполняю ее какими-нить символами и возвращаю в основную программу (Delphi) указатель на нее В основоной программе есть вот такой класс:
и создаю строку
FarCallResult : integer - это то что вернула ДЛЛ Все работает нормально. Вопрос: освободится ли память после освобождения объекта ???
Или мне надо самому ручками удалять через HeapFree ? Это сообщение отредактировал(а) Gershkovich - 27.12.2006, 18:16 |
||||||
|
|||||||
| Snowy |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 11363 Регистрация: 13.10.2004 Где: Питер Репутация: 192 Всего: 484 |
Не выделяй память - пусть это делает вызывающая программа.
|
|||
|
||||
| Gershkovich |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 243 Регистрация: 8.2.2006 Репутация: 0 Всего: 2 |
Все таки интересно куда девается строка
скажем в случае явного задания строки:
Это сообщение отредактировал(а) Gershkovich - 27.12.2006, 18:45 |
|||
|
||||
| Romikgy |
|
|||
![]() Любитель-программер ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7326 Регистрация: 11.5.2005 Где: Porto Franco Odes sa Репутация: 26 Всего: 146 |
имхо никуда, просто ссылка на эту строку обняляется, чем разрешает писать на место строки любые данные
-------------------- Владение русской орфографией это как владение кунг-фу — истинные мастера не применяют его без надобности. |
|||
|
||||
| W4FhLF |
|
|||
![]() found myself ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 2831 Регистрация: 2.12.2006 Репутация: 6 Всего: 121 |
HeapFree удаляет из управляющей структуры кучи запись об этом участке и заполняет участок "случайными" данными, строка в памяти существовать перестаёт.
-------------------- "Бог умер" © Ницше "Ницше умер" © Бог |
|||
|
||||
| bems |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 3400 Регистрация: 5.1.2006 Репутация: 31 Всего: 88 |
Value освобождается. A результат HeapAlloc нужно освободить руками
Добавлено @ 20:08 клас! А зачем она это делает, а? -------------------- Обижено школьников: 8 |
|||
|
||||
![]()
|
| Правила форума "Delphi: Общие вопросы" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |