Вниз
Скачать: CL | DM;

Освобождение всяких IShellFolder, PItemIDList и т.д.   Найти похожие ветки 

 
Андрей Молчанов   (2005-08-05 20:03) [0]

Пожалуйста, подскажите, надо ли освобождать IShellFolder, PItemIDList, IMalloc и других их собратьев, и если надо, то как. Заранее благодарен.


 
GuAV ©   (2005-08-05 20:15) [1]

Те, которые IXxxx - это интерфейсы, их освобождение делается автоматически, когда обнулчется счётчик ссылок (что должно само происходить при выходе из области видимости переменной, или при присвоении ей nil).
Указатели, вроде PItemIDList (а точнее данные на которые они указывают) часто требуется освободить вручную (IMalloc.Free в дан случае), в MSDN это явно указывется, как например про ppidl в SHGetSpecialFolderLocation.


 
Андрей Молчанов   (2005-08-05 20:23) [2]

Спасибо. Значит, про IShellFolder и IMalloc можно забыть, да?

И еще вопрос, у меня есть дерево элементов, в некоторых Data указывает на запись с переменными PItemIDList. Как их освобождать тогда? При FormDestroy проходиться по всем записям и освобождать в каждой?


 
GuAV ©   (2005-08-05 20:32) [3]


> про IShellFolder и IMalloc можно забыть, да?

Можно забыть. Можно захотеть освободить раньше и присвоить nil (например, глобальная переменная будет освобождена только при выходе).


> есть дерево элементов,

Дерево это TreeView ?
Тогда событие OnDeletion.


 
Андрей Молчанов   (2005-08-05 20:51) [4]

БОЛЬШОЕ СПАСИБО!!!!!!!



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.022 c
4-1123568577
_sulent
2005-08-09 10:22
2005.10.02
NumLock, CapsLock


1-1126244691
yk
2005-09-09 09:44
2005.10.02
принудительная прокрутка пор Win 98


1-1125847131
MyName
2005-09-04 19:18
2005.10.02
Dll String


14-1126170736
КаПиБаРа
2005-09-08 13:12
2005.10.02
Про звук телевизора из радио


1-1126201432
dRake
2005-09-08 21:43
2005.10.02
Как починить дебаггер?




   Наверх