Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

как отследить переменную по адресу в куче [D6, Win2k]


Андрусь ©   (2002-08-01 19:06:00) 

Привет всем! Подскажите,как отследить переменную по адресу в куче.Тип неизвестен.Пробовал такое

Procedure ShowVarNameOnAddr(Addr:integer);
var s:string;
Begin
try
s:="Имя переменной: "+TObject(Addr).ClassName
except
s:="Ошибка преобразования";
End;
ShowMessage(s);
End;

Не проходит - Ошибка преобразования. Подкиньте какую-нибудь идейку.Зараннее юольшое спасибо.


Андрусь   (2002-08-02 11:20:00) [1]

Думаю что класс,т.к. вываливает ошибка

ODS: HEAP: Free Heap block 12cafe0 modified at 12cb188 after it was freed Process Str_Project.exe ($39C)

В своей программе динамических переменных не использую. Так что там мог вполне быть объект. А вот на счёт идей...


Alx2   (2002-08-02 08:14:00) [2]

>Тип неизвестен
Тогда почему думаем, что там сидит экземпляр класса?


IlyaA   (2002-08-02 08:04:00) [3]

Даже если так как ты написал и сделать pointer всё равно енто будет работать только дня объектов.
Что ты подразумеваешь под переменной?


IlyaA   (2002-08-02 07:09:00) [4]

Наверное Addr у тебя должен быть типа Pointer, а не integer.


Наверх

Титульная страница Поиск, карта сайта Написать письмо