
Wollte mal Fragen ob es möglich ist dass Python auf regedit zugreift und einen gegebenen Pfad abläuft um dann bei einem bestimmtem Key einen Wert zu verändern...geht das?
MfG
PS: hab schon gegoogelt!
Prima! Da der erste Treffer bei der Suche nach "python registry" bereits das richtige Ergebnis liefert, hat sich das Problem ja schon von alleine gelöst.Pyanfänger hat geschrieben:PS: hab schon gegoogelt!
Kein Wunder. Du wirfst nämlich Begriffe durcheinander. Zugreifen möchtest du auf die Windows-Registry, aber nicht auf regedit. regedit ist nur eins der Programme mit denen man Einträge in der Registry verändern kann.Pyanfänger hat geschrieben:Oh tschuldigunghatte aber nach was anderem gegoogelt ;D
Code: Alles auswählen
key = _winreg.OpenKey(_winreg.HKEY_LOCAL_MACHINE, "SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\Winlogon\\SpecialAccounts\\UserList\\")
setValue(key, REG_DWORD, 1)
CloseKey(hkey)
Code: Alles auswählen
Traceback (most recent call last):
File "C:\Users\akempf\Desktop\test.py", line 3, in <module>
key = _winreg.OpenKey(_winreg.HKEY_LOCAL_MACHINE, "SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\Winlogon\\SpecialAccounts\\UserList\\")
WindowsError: [Error 2] The system cannot find the file specified
Na geht doch. Die Suche bei Google nach "python funny cats" verlinkt schon auf der vierten Seite auf diesen Thread. Wenn das Thema offensichtlich gerade so heiß ist, sollte ich vielleicht eine Umfrage zur Erstellung eines neuen Unterforums für lusitge Katzenbilder initiieren. Quasi als Gegenspieler zu der Rubrik "Äußerst schwierige Fragen".BlackJack hat geschrieben:@EyDu: Warte ein bisschen und versuch es dann noch einmal — dann findest Du vielleicht dieses Thema hier und damit einen Hinweis auf bessere Suchworte.
Code: Alles auswählen
SOFTWARE\\Microsoft\\Windows NT\\CurrentVersion\\Winlogon\\SpecialAccounts\\UserList\\USERNAME
Code: Alles auswählen
Python 2.7.3 (default, Apr 10 2012, 23:31:26) [MSC v.1500 32 bit (Intel)]
In [1]: import _winreg
In [2]: python = _winreg.OpenKey(_winreg.HKEY_LOCAL_MACHINE, "SOFTWARE\\Python\\PythonCore")
In [3]: _winreg.EnumKey(python, 0)
Out[3]: '2.7'
In [4]: _winreg.EnumKey(python, 1)
Out[4]: '3.2'
In [5]: python_inst_path = _winreg.OpenKey(_winreg.HKEY_LOCAL_MACHINE, "SOFTWARE\\Python\\PythonCore\\2.7\\InstallPath")
In [6]: _winreg.EnumValue(python_inst_path, 0)
Out[6]: ('', u'C:\\Dev\\python27\\', 1)
In [7]: _winreg.EnumKey(python_inst_path, 0)
Out[7]: 'InstallGroup'
Code: Alles auswählen
In [5]: python = _winreg.OpenKey(_winreg.HKEY_LOCAL_MACHINE, "SOFTWARE\Python\PythonCore\2.7\InstallPath")
---------------------------------------------------------------------------
WindowsError Traceback (most recent call last)
<ipython-input-5-ab8f17a1ec18> in <module>()
----> 1 python = _winreg.OpenKey(_winreg.HKEY_LOCAL_MACHINE, "SOFTWARE\Python\PythonCore\2.7\InstallPath")
WindowsError: [Error 2] Das System kann die angegebene Datei nicht finden
Deshalb sollst du es ja auch schrittweise mit Regedit kontrollieren.Pyanfänger hat geschrieben:1. er findet den key nich, das is ja das problem =S
Das ist ein Beispiel. Du sollst das natürlich auf deinen Code adaptieren.Pyanfänger hat geschrieben:2. ich hab in meiner registry nix mt python
Code: Alles auswählen
python = _winreg.OpenKey(_winreg.HKEY_LOCAL_MACHINE, r"SOFTWARE\Python\PythonCore")