C++ Builder
| Главная | Уроки | Статьи | FAQ | Форум | Downloads | Литература | Ссылки | RXLib | Диски |

 
Оперативная память
** riff-raff
Отправлено: 12.11.2004, 17:52


Не зарегистрирован







Как программно после завершения работы какой-либо программы определить кусок оперативной памяти, который она исполшьзовала, и очистить его?
Gedeon
Отправлено: 12.11.2004, 18:09


Ветеран

Группа: Модератор
Сообщений: 1742



Память надо освобождать перед завершением программы, если Вы ее отдельно выделяли. Если нет, она освободится сама.
** riff-raff
Отправлено: 13.11.2004, 01:23


Не зарегистрирован







У меня диплом такой. Проверка гарантированной очистки оперативной памяти (область — ИБ). Так что хочешь-не хочешь, а проверить надо... Как????
exp
Отправлено: 13.11.2004, 13:36


Мастер участка

Группа: Участник
Сообщений: 304



Как первое приближение для области памяти:

[Начальный адрес проги; Начальный адрес проги + Размер проги + суммарный размер всех подгруженных dll]

PS: А ты уверен, что твой препод сам сможет проверить правильность твоей проги? Я сомневаюсь.

PPS: А как, ксати, твоя прога после завершения скажет юзаку, что память под неё уже очищена?
Guest
Отправлено: 13.11.2004, 14:23


Не зарегистрирован







Ага, и не забудьте, что винда выгружает dll'и из памяти не сразу.
** riff-raff
Отправлено: 13.11.2004, 16:39


Не зарегистрирован







Да я сам толком не решил.... Ну хотя бы подчищать за основным модулем программы(без подгруженных dll)... Есть мысли?
** riff-raff
Отправлено: 13.11.2004, 17:13


Не зарегистрирован







Как засечь прекращение работы какой-либо программы?
Konstantine
Отправлено: 15.11.2004, 09:49


Мастер участка

Группа: Модератор
Сообщений: 545



а нада только данные вычистить или и код тоже?
Gedeon
Отправлено: 15.11.2004, 13:17


Ветеран

Группа: Модератор
Сообщений: 1742



QUOTE (exp @ 13/11/2004, 14:38)
[Начальный адрес проги; Начальный адрес проги + Размер проги + суммарный размер всех подгруженных dll]

А если прога пакована например каким-нить UPX?

Отслеживать надо любую прогу или какую-нить конкретную или свою (т.е. прога сама за собой должна следить)?
** riff-raff
Отправлено: 17.11.2004, 16:31


Не зарегистрирован







Вычистить надо только данные из оперативной памяти...
Отслеживать любую прогу...
** riff-raff
Отправлено: 02.12.2004, 15:30


Не зарегистрирован







На самом деле никто не знает?! Как хотя бы определить область памяти, которую использовала какая-либо программа(без областей, занимаемых какими-либо dll)?

Вернуться в Вопросы программирования в C++Builder