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

HeapAlloc и PSECURITY_DESCRIPTOR   Найти похожие ветки 

← →
learner ©   (2006-07-18 18:15) [0]

Поясните, пожалуйста, почему во многих примерах по созданию
PSECURITY_DESCRIPTOR, для резервирования памяти используют HeapAlloc,
а не, например, GetMem или др. функцию ?


← →
Eraser ©   (2006-07-18 18:31) [1]

> [0] learner ©   (18.07.06 18:15)

потому что большенство примеров, использующих PSECURITY_DESCRIPTOR, написано на MSVC++, в котором нету никаких GetMem.


← →
Eraser ©   (2006-07-18 18:32) [2]

вдогонку:

цитата из msdn
Several functions that use the SECURITY_DESCRIPTOR structure require that this structure be on a valid pointer boundary in memory. These boundaries vary depending on the type of processor used. Memory allocation functions, such as malloc and LocalAlloc, return properly aligned pointers.


← →
learner ©   (2006-07-18 18:45) [3]

Спасибо.
Т.е. все-таки, желательно использовать LocalAlloc ?


← →
Eraser ©   (2006-07-18 18:51) [4]

AFAIK - без разницы.


← →
Ketmar ©   (2006-07-18 20:47) [5]

в принципе -- без разницы. а на практике -- HeapAlloc() МОЖЕТ вернуть указатель, не выравненый по границе. что вызовет сбои в других функциях. я два дня искал баг в верном коде (там не было HeapAlloc, правда %-). оказалось -- всего лишь не поравнял структуру для VirtualProtect().


← →
Игорь Шевченко ©   (2006-07-19 11:02) [6]


> Т.е. все-таки, желательно использовать LocalAlloc ?


Без разницы. Можно использовать все что угодно, в том числе статический массив
var SDBody: array[0..1023] of Char;
если в килобайт влезет заголовок SD + все ACL



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

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



Память: 0.46 MB
Время: 0.028 c
2-1153155041
chuk1
2006-07-17 20:50
2006.08.06
ToolBar


2-1153184787
Toy
2006-07-18 05:06
2006.08.06
Курс доллара


15-1152688443
Ламот
2006-07-12 11:14
2006.08.06
Проблемы с ping’ом


2-1153045175
Ильдар
2006-07-16 14:19
2006.08.06
Добавление файлов из подкаталога


3-1148975873
Kley
2006-05-30 11:57
2006.08.06
выгрузка записей из одной табл в другую




   Наверх