Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.06.06;
Скачать: CL | DM;

Вниз

Security Descriptor   Найти похожие ветки 

 
com   (2004-04-24 14:40) [0]

Извинияйте люди, что на C++, Api функции везде-то одинаковые. Надеюсь народ поймёт этот код.
Мне надо открыть/закрыть доступ пользователю к папке.
Проблема в том, что пользователь добавляется в свойствах папки, а его права не устанавливаются.
Хоть этот пример и взят из MSDN, но он не работает.
Помогите разобраться.

PACL                 pACL;
PSECURITY_DESCRIPTOR pSD;
EXPLICIT_ACCESS  ea;

ea.grfAccessPermissions = STANDARD_RIGHTS_ALL;
ea.grfAccessMode = SET_ACCESS;
ea.grfInheritance= NO_INHERITANCE;
ea.Trustee.TrusteeForm = TRUSTEE_IS_NAME;
ea.Trustee.TrusteeType = TRUSTEE_IS_USER;
ea.Trustee.ptstrName  = (LPTSTR) "user";

SetEntriesInAcl(1, &ea, NULL, &pACL);
pSD = (PSECURITY_DESCRIPTOR) LocalAlloc(LPTR,
                            SECURITY_DESCRIPTOR_MIN_LENGTH);

InitializeSecurityDescriptor(pSD, SECURITY_DESCRIPTOR_REVISION);
SetSecurityDescriptorDacl(pSD,TRUE,pACL, FALSE);

SetFileSecurity("C:\\folder",DACL_SECURITY_INFORMATION,pSD);


 
Polevi ©   (2004-04-24 14:42) [1]

твоя проблема в том что ты не анализируешь результаты вызова API ф-ий


 
com   (2004-04-24 15:10) [2]

Я их анализирую но для простоты кода я их не включил в сообщение.

...
dwRes = SetEntriesInAcl(1, &ea, NULL, &pACL);
if (dwRes!==ERROR_SUCCESS) ошибка;
...

Никаких ошибок не выдавало.


 
com   (2004-04-27 10:29) [3]

Может надо самому иметь соответствующие права на папку? Так я же вроде под админом сижу и ошибок никаких не выдаёт.


 
Игорь Шевченко ©   (2004-04-27 10:41) [4]

А что написано в MSDN про условия выполнения примера ?


 
com   (2004-04-28 09:10) [5]

Там написано:

Windows NT, Windows Me/98/95:  Directory service objects are not supported.

Выходит в Win2000 всё должно работать нормально. Новедь гдето же глюк есть!


 
VMcL ©   (2004-04-28 11:12) [6]

>>com  (27.04.04 10:29) [3]

>Может надо самому иметь соответствующие права на папку?

А ты как сам думаешь, может, к примеру, "гость" или "юзер" поменять права на папку "%systemroot%\system32"?


 
com   (2004-04-29 10:16) [7]

>>VMcL ©   (28.04.04 11:12) [6]

>>А ты как сам думаешь, может, к примеру, "гость" или "юзер" >>поменять права на папку "%systemroot%\system32"?

Исчерпывающий ответ, спасибо за такую колоссальную помощь. Даже не знаю чтоб я без тебя(VMcL) делал!

Но я уже и сам разобрался.



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

Текущий архив: 2004.06.06;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.03 c
1-1085380530
Максим
2004-05-24 10:35
2004.06.06
Затемнение экрана


3-1084782386
Goida
2004-05-17 12:26
2004.06.06
Где компоненты для работы с Sybase?


14-1085219521
Piter
2004-05-22 13:52
2004.06.06
Вы слишком долго жили в Америке, если...


1-1085095710
Mishenka
2004-05-21 03:28
2004.06.06
Как в Label ввести греческие буквы?


3-1084518929
TransparentGhost
2004-05-14 11:15
2004.06.06
Где находятся SHGetSpecialFolderPath и SHGetFolderPath ?