Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Проверить наличие нескольких dwAccessMask в целевом Ace.Mask
|
|||
|---|---|---|---|
|
#18+
Ну вот такой стандартный код, ляпал такие штуки не задумываясь: Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. (логика взята из примера из SDK, но там логически не предполагается что добавляемая dwAccessMask может быть комбинацией из двух и более (AccessMask1 Or AccessMask2), т.е. по их логике либо одно либо другое, но не скопом) Вот проверямые права Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. Допустим 8 -присутствует в Ace.Mask ; 16-отсутствует Ace.Mask And 8 даст True Ace.Mask And 16 даст False А вот теперь "глюк", если я добавляю/проверяю "комбинацию" Ace.Mask And (8 Or 16) даст опять True, хотя надо получить False (16 то отсутствует) Вывел MsgBox Ace.Mask And 8 даст 8 Ace.Mask And 16 даст 0 Ace.Mask And (8 Or 16) даст 8 Т.е. мне нужно получить False если хотя бы что-то одно отсутствует. Правильно ли я понимаю, что код надо поменять вот так? Код: vbnet 1. Смысл, если в Dacl в Security Descriptor уже есть Ace, содержащий ВСЕ права которые я добавляю (для указанного pSID="Пользователь/группа"), то все OK и ничего менять не надо, если хоть одного "права" нет, то я их добавляю. Верхний код работает неверно (если хоть "одно право" есть, то ничего, в том числе отсутствующие права добавлять не надо). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.04.2019, 17:34 |
|
||
|
|

start [/forum/topic.php?fid=20&fpage=21&tid=1398988]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
40ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
35ms |
get tp. blocked users: |
2ms |
| others: | 268ms |
| total: | 390ms |

| 0 / 0 |
