Приветствую. Нужно спрятать раздел реестра. (не малварь, а даже наоборот, защита личных данных) Перехватил ZwEnumerateKey, ловлю момент прохождения "моего" раздела через функцию. Вот уже вроде и указатель на KeyInformation с нужной "веткой", но что делать дальше то? 1. Если занулить буфер и вернуть ResultLength = 0, а NTSTATUS = STATUS_SUCCESS, мы получим хвост в виде раздела с "пустым" именем и содержащий в себе ссылку на раздел в котором находится.(эдакий бесконечный раздел). - некрасиво 2. Если вернуть STATUS_INVALID_PARAMETER или STATUS_NO_MORE_ENTRIES перечисление разделов естественно обрывается и у нас получается пропажа всех разделов после моего включительно. - вообще не вариант 3. Если подменять Index: 3.1. Index++(единожды) не вариант, будет 2 одинаковых раздела. 3.2. Если делать сдвиг всех последующих разделов на +1, то существует вероятность, что в данный момент произойдёт точно такой же запрос и ветка с индексом 0 не будет отображена. (нужно контролировать откуда идёт вызов) - можно, но хотелось бы не усложнять настолько. Кто-нибудь знает варианты попроще?