| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2291 人关注过本帖
标题:winreg 导出注册表 OSError: [WinError 1314] 客户端没有所需的特权。
取消只看楼主 加入收藏
chenbhuli
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2021-8-15
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:3 
winreg 导出注册表 OSError: [WinError 1314] 客户端没有所需的特权。
各位大哥,以下代码,想把 HKEY_LOCAL_MACHINE\SOFTWARE\123456  键下所有注册表值备份导出到mykey.reg文件,运行后权限报错,求解决方案
程序代码:
import winreg

reg_root = winreg.HKEY_LOCAL_MACHINE
reg_path = r'SOFTWARE\123456'
reg_permission = winreg.KEY_ALL_ACCESS
reg_name = 'PS_VendorSPVersion'

key = winreg.OpenKeyEx(reg_root, reg_path, 0, reg_permission)
data, regType = winreg.QueryValueEx(key, reg_name)
print(data)
winreg.SaveKey(key, "mykey.reg")

运行结果:
程序代码:
D:\python3.7.0\python.exe E:/Python_Project/Chenb_Test/myapp/test.py
V1.2.2
Traceback (most recent call last):
  File "E:/Python_Project/Chenb_Test/myapp/test.py", line 11, in <module>
    winreg.SaveKey(key, "mykey.reg")
OSError: [WinError 1314] 客户端没有所需的特权。

Process finished with exit code 1
搜索更多相关主题的帖子: 注册表 reg 导出 客户端 key 
2021-08-15 22:13
chenbhuli
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2021-8-15
收藏
得分:0 
我试过两种方法
1、进入pycharm目录,右键管理员执行pycharm64.exe打开IDE后执行代码 , 结果一样
2、使用   pyinstaller -F -w  --uac-admin  E:\Python_Project\Chenb_Test\myapp\test.py  命令生成test.exe ,再用管理员执行,弹框提示 “Failed to execute script test”

上面两种方法均没达到预期效果。
2021-08-16 09:13
chenbhuli
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2021-8-15
收藏
得分:0 
古123  感谢您的热心回复

test.py文件,我通过  属性-安全  选项卡来看,管理员已有着‘完全控制’文件权限

另外,如果此代码解决不了我的需求,请问您还有别的python代码方案建议吗?
我的需求是:备份导出出一个 XX\XXX 路径的注册表,(有要求不能调用批处理)
2021-08-18 10:23
chenbhuli
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2021-8-15
收藏
得分:0 
非常感谢! 古123
您提供的代码示例,已解决了我的问题!
2021-08-22 15:04
快速回复:winreg 导出注册表 OSError: [WinError 1314] 客户端没有所需的特权。
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.011471 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved