PATH
環境変数に何かを追加する次の単純なコードを Windows 8 で実行しています。驚いたことに、それは失敗しerror 5: access denied
ます。すべての代わりにSetValueEx
ポイントする場合は正常に動作します。との権限を確認しました- それらは同じで、ユーザーにはフルアクセス権があります。アクセスが拒否されるのはなぜですか?HKCU
HKCU\Environment
HKCU
HKCU\Environment
hKey = _winreg.OpenKey( _winreg.HKEY_CURRENT_USER, 'Environment' )
for i in itertools.count():
try:
sName, sData, nType = _winreg.EnumValue( hKey, i )
if 'PATH' == sName:
_winreg.SetValueEx( hKey, 'PATH', 0, nType, os.environ[ 'PATH' ] )
break
except WindowsError:
raise "No 'PATH' in registry"