python修改注册表拒绝访问

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python修改注册表拒绝访问相关的知识,希望对你有一定的参考价值。

_winreg.OpenKey(_winreg.HKEY_LOCAL_MACHINE, 'SOFTWARE\\11',0,_winreg.KEY_ALL_ACCESS)提示拒绝访问()WindowsError: [Error 5] )。
同等条件下变成读注册表就可以,这个怎么解决?(win32con.KEY_READ可以;win32con.KEY_ALL_ACCESS、win32con.KEY_WRITE都不行)。

参考技术A 需要用管理权权限打开编译调试工具 参考技术B 出现此问题的原因应该是没管理员权限导致的。
只需要打开已管理员身份打开cmd,再输入程序的完整路径就可以以管理员身份运行了。或者在程序的开头加上这一段代码以提权:
from ctypes import windll

from sys import executable,argv
windll.shell32.ShellExecuteW(None, "runas", executable,argv[0], None, 0)

不过我不知道代码能不能生效。
参考技术C 用管理员运行python.exe,才能修改吧追问

现在是.py文件 没打包

追答

运行代码时需要管理权限..

追问

那应该怎么弄呢 python可以自动提权吗 不懂python。。

追答

看你的py是怎么运行的。如果是快捷图标可以右键“以管理员运行”
如果是命令行可以:
runas /trustlevel:0x20000 python.exe n:\dir\脚本.py

提升岛管理员权限..

追问

我想打开脚本调试F5就能改注册表 这个有没有办法呢 ?
能不能通过代码提升运行时的权限?

追答

用上面命令行方法可以试试...

追问

不能像部分语言一样在代码里增加一个向系统请求高权限的代码?

追答

一般都在python进程启动时赋予管理权限,python总需要被启动吧..
另,通常在python代码中提升的是子进程的权限,也和上面命令行或其他语言差不多。
又看到你说“按f5调试”可能是IDLE环境,可以右键“以管理员”启动IDLE即可..

本回答被提问者采纳

不能更改IP显示无权限访问

我在公司的电脑无法更改IP(也就是不能上网了),被人在运行里做了手脚,显示无权限访问此接的属性,请各位计算机高手帮助!

如果你是AD用户的话,那么肯定是你的系统管理员在AD服务器上设置了群组原则,限制人更改网络连接属性。如果要改的话,你就要获取到AD系统管理员权限,然后在群组原则里面去修改了。 参考技术A 肯定是在域控制器上给你做了限制。找管理员

以上是关于python修改注册表拒绝访问的主要内容,如果未能解决你的问题,请参考以下文章

win7 F盘拒绝访问 无法更改权限 怎么办?

Server 服务因下列错误而停止: 拒绝访问。

不能更改IP显示无权限访问

如何用批处理修改注册表的权限呢?

是否可以通过 .bat/.cmd 脚本修改注册表项?

使用secureCRT远程Linux,出现远程主机拒绝连接。