Я чувствую, что я беру сумасшедшие таблетки. Поэтому для обеспечения безопасности на api на работе, которую я использую, мне нужно прочитать 2 вещи из реестра, и затем я перехожу к пеной. Проблема заключается в чтении значений реестра. Независимо от того, что я делаю, я получаю «Error2, что система не может найти указанный файл». Я знаю, что файл реестра есть, но он не позволит мне прочитать его. Я пробовал код ниже на двух разных серверах r2 2008 года. В одном окне окна 7 я могу читать значения ... но только на одной машине. Ниже приведен код, с текущим каталогом мне нужно изменить (чтобы защитить анонимность)Прочитайте значение реестра с проблемами python
from _winreg import *
key = OpenKey(HKEY_LOCAL_MACHINE, r"Software\a\b", 0, KEY_ALL_ACCESS)
devguid = QueryValueEx(key, "DeviceID")
devid = QueryValueEx(key, "DeviceGUID")
devnm = socket.gethostname()
Если изменить каталог на что-то другое, чем \ а \ б, она отлично работает. Я проверил, что разрешения на эти каталоги являются такими же, как и каталоги, которые я могу прочитать.
Кроме того, я могу запустить следующую команду CMD и получить выход мне нужно: рег запрос HKLM \ Software \ а \ Ь/v DeviceGUID Но когда я запускаю его из питона сценария, он говорит, что не может найти файл указано.
import os
cmd = "reg query HKEY_LOCAL_MACHINE\software\a\b /v DeviceGUID"
a = os.system(cmd)
print a
Запуск моего сценария как администратора или ничего не помогает. По какой-то причине python не может попробовать и готовый реестр.
Ваш второй не будет работать, потому что вы не избежали '\\' – Serdalis