|
|
|
Как проверить, указывают ли 2 открытых хендла на один и тот же физический объект? (напр., ключ реестра)26.10.2017, 18:24. Показов 1704. Ответов 13
Метки нет (Все метки)
0
|
|
| 26.10.2017, 18:24 | |
|
Ответы с готовыми решениями:
13
Дубликат класса. Widget1 и widget2 указывают на один и тот же объект Как использовать один и тот же объект в разных классах?
|
|
1260 / 870 / 268
Регистрация: 02.04.2009
Сообщений: 3,307
|
|
| 27.10.2017, 17:42 | |
|
Dragokas, вроде хендл уникальный идентификатор. Если хендл тот-же, то и указывает на одно и то же. А если нет, то и указывают они на разные объекты. Или я что-то путаю?
0
|
|
|
1260 / 870 / 268
Регистрация: 02.04.2009
Сообщений: 3,307
|
|
| 27.10.2017, 17:58 | |
|
Dragokas, заново открыть, означает "создать новый открыватель". Реестр это файл, при его, открывании создаётся новая инстанция объекта (читающая его). По крайней мере, я так помню, хотя, могу ошибаться.
0
|
|
|
232 / 135 / 19
Регистрация: 10.11.2015
Сообщений: 305
|
|
| 28.10.2017, 13:45 | |
|
DELETE
1
|
|
|
Супер-модератор
|
|
| 28.10.2017, 15:15 | |
|
Win10 only: CompareObjectHandles
2
|
|
|
Покинул форум
3701 / 1484 / 355
Регистрация: 07.05.2015
Сообщений: 2,903
|
|
| 28.10.2017, 15:28 | |
Сообщение было отмечено Dragokas как решение
Решение
Если речь о HKEY значениях, можно использовать NtQueryKey с установленным KeyInformationClass в KeyNameInformation, а далее просто сравнить полученные строки. Если речь непосрестевнно о дескрипторах, открываемых, скажем, системой, можно либо, как написал выше volvo, использовать CompareObjectHandles, либо вычеслить хэши значений объектов и сравнить их, либо писать код на асме.
1
|
|
|
|
|||
| 28.10.2017, 20:29 [ТС] | |||
|
Спасибо, greg zakharov. Это помогло.
Через сравнение ссылок на объект я хотел определить, является ли ключ реестра Shared. Для этого я открываю один и тот же ключ с разными флагами WOW, и сравниваю хендлы. Тест на ключах
NtQueryKey + KeyNameInformation возвращает
CompareObjectHandles к сожалению себя не оправдал, т.к. он возвращает false с кодом ошибки 1656 "The objects are not identical", даже если открыть один и тот же ключ с одинаковыми флагами.
0
|
|||
|
139 / 139 / 53
Регистрация: 14.06.2016
Сообщений: 467
|
|
| 02.11.2017, 15:06 | |
Сообщение было отмечено Dragokas как решение
Решение
для произвольного объекта универсальный (с некоторыми оговорками) вариант будет NtQueryObject с классами ObjectTypeInformation/ObjectNameInformation
1
|
|
|
|
|||||||||||
| 02.11.2017, 15:20 [ТС] | |||||||||||
|
jr_, и по какому полю там вы определите, что они идентичны:
0
|
|||||||||||
|
139 / 139 / 53
Регистрация: 14.06.2016
Сообщений: 467
|
|
| 02.11.2017, 15:35 | |
|
собственно ObjectNameInformation возвращает UNICODE_STRING
0
|
|
|
139 / 139 / 53
Регистрация: 14.06.2016
Сообщений: 467
|
|
| 02.11.2017, 15:39 | |
|
да.
0
|
|
|
|
|
| 02.11.2017, 15:40 [ТС] | |
|
А, ок, разобрался.
0
|
|
| 02.11.2017, 15:40 | |
|
Помогаю со студенческими работами здесь
14
Как создать 2 и более камер на xna4 и смотреть поочередно из каждой из них на один и тот же объект
Можно ли в разных lock() одновременно использовать один и тот же объект синхронизации Один и тот же объект в одном выражении модифицируется несколько раз - неопределенное поведение
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git
main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели
8ATzM_2aurI
|
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2.
Задача: запретить редактирование документа, если он открыт у другого пользователя.
/ / . . .
|
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои.
А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
|
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20%
kYBz3eJf3jQ
|
|
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
|
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
|
Использование значений реквизитов справочника в документе, с определенными условиями и правами
Maks 07.04.2026
1. Контроль срока действия договора
Алгоритм из решения ниже реализован на примере нетипового документа "ЗаявкаНаРаботу", разработанного в конфигурации КА2.
Задача: уведомлять пользователя, если. . .
|
Доступность команды формы по условию
Maks 07.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2.
Задача: сделать доступной кнопку (команда формы "ЗавершитьСписание") при. . .
|