Есть ли способ узнать, какое значение реестра было запрошено в Process Monitor?

2

NAME NOT FOUND отображается встолбце результатов Process Monitor , поэтому я собирался создать значение самостоятельно. Но я не знаю,пытались ли получить доступк двоичному , строковому или, скажем, DWORD . Кто-нибудь знает, есть ли способ выяснить это в случае RegQueryValue ?

RegQueryValue

Starhowl
источник
Нужно ли использовать Process Monitor, как насчет такого инструмента, как API Monitor. Смотрите пример imgur.com/a/Ob8F3nB . По существу, если вы знаете, API который вызывается в RegQueryValueEx (это будет в стеке в ПМ) , то четвёртая параметр будет тип - docs.microsoft.com/en-us/windows/desktop/api/winreg/... ли эта информация поможет?
HelpingHand

Ответы:

1

Не совсем, но в некоторых случаях мы можем сделать правильное предположение.

RegQueryValueОперация в Process Monitor , по существу соответствует RegQueryValueExфункции при вызове. У этой функции есть параметр с именем lpType, но это ...

Указатель на переменную, которая получает код, указывающий тип данных, хранящихся в указанном значении.

Акцент мой. Это делается для того, чтобы приложениям можно было узнать тип полученного ими значения. ( RegQueryValueExне заботится о типах данных, он просто передает байты. Задача программы - интерпретировать байты.) Даже если программа по какой-то причине указала тип, Process Monitor не сообщает значение при вводе функции, только при успешный выход.

Это, однако, сообщает «длина». По непонятным причинам это не то lpcbDataзначение, которое приложение предоставляет для определения размера буфера для результата - в 64-битной системе нужно вычесть 12, чтобы получить оригинал. Значение DWord занимает 4 байта, значение QWord занимает 8 байтов, а все остальные виды имеют переменную длину. (Программы могут также вообще не подготавливать память перед вызовом функции, просто чтобы проверить, существует ли значение.) Поэтому, если «длина», сообщаемая Process Monitor, равна 16, программа ожидает 4-байтовый фрагмент данных, что почти конечно DWord.

Бен Н
источник