我試圖執行Ned Batchelder的this script來切換.py
我在Windows上的兩個Python安裝之間的文件關聯。此Python腳本使用_winreg
模塊(Python 3.x中的winreg
)編輯某些註冊表值(修改後的路徑和值對可在腳本的todo
列表中看到)。在Windows 7上使用_winreg編輯註冊表值時出現Python:WindowsError
我如下執行這個腳本:
> SwitchPy.py "C:\Program Files\Python26"
我收到以下錯誤:
Traceback (most recent call last):
File "C:\Users\SuperUser\SwitchPy.py", line 30, in <module>
key = reg.OpenKey(classes_root, path, 0, reg.KEY_SET_VALUE)
WindowsError: [Error 5] Access is denied
我猜測,這可能是是與帳戶權限。但請注意:
上面使用的帳戶是
Administrators
組的一部分,具有管理員權限。通過上述帳戶,我可以執行
regedit.exe
並手動設置腳本中列出的值,而不會面臨任何權限或訪問問題。
我使用Windows 7並且是域的一部分。這些問題中的任何一個都可以解決這個問題嗎?
有沒有人對此錯誤有任何線索?我如何讓這個腳本運行?
其實,即使是我的註冊表沒有在待辦事項列表第2項。我刪除它們並運行該腳本並面對上述「訪問被拒絕」錯誤。 – 2009-12-04 09:07:20