как подключиться к удаленному реестру с помощью Python 3.x winreg - PullRequest
0 голосов
/ 15 марта 2019

Я сталкиваюсь с проблемой при попытке подключиться к реестру удаленного компьютера через python winreg .Я пытаюсь поймать подключенный сетевой принтер от текущего пользователя, вошедшего в систему из реестра.

Мой код выглядит следующим образом:

def enumRegKeySubkeys():
    key_path = "Printers\\Connections"
    target = r"\\192.168.20.164"
    rem_reg = ConnectRegistry(target, HKEY_CURRENT_USER)
    rem_key = OpenKey(rem_reg, key_path, 0, KEY_READ | KEY_WOW64_64KEY)
    result = []
    index = 0
    while True:
        try:
            subkey = EnumKey(rem_key, index)
            result.append(subkey)
            index += 1
        except EnvironmentError:
    return result

Когда я запускаю это, я получаю ошибкусообщение:

Traceback (последний последний вызов) Файл ". \ test2.py", строка 21, в печати (enumRegKeySubkeys ()) Файл ". \ test2.py", строка 8, вenumRegKeySubkeys rem_key = OpenKey (rem_reg, key_path, 0, KEY_READ | KEY_WOW64_64KEY) FileNotFoundError: [WinError 2] Системе не удается найти указанный файл

Если я запускаю его локально

rem_reg = ConnectRegistry(None, HKEY_CURRENT_USER)

тогда проблем нет, и я получаю то, что хочу.

Все это происходит в среде домена Windows, выполняется с правами администратора (домена) и выполняется служба удаленного реестра на клиенте..

Заранее спасибо за помощь!

...