pywintypes.error: (1314, ‘****‘, ‘客户端没有所需的特权。‘)

Posted Jason_WangYing

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了pywintypes.error: (1314, ‘****‘, ‘客户端没有所需的特权。‘)相关的知识,希望对你有一定的参考价值。

主要是没有管理员权限

报错原因
在使用win32api来修改同步windows的系统时间时报win32api.SetSystemTime(tm_year, tm_mon, tm_wday, tm_mday, tm_hour, tm_min, tm_sec, int(msec)) pywintypes.error: (1314, 'SetSystemTime', '客户端没有所需的特权。')
代码如下

win32api.SetSystemTime(2020,11,1,11,13,10,10,0)


错误原因
导致这个错误的原因是在执行这个脚本时,权限不够,需要使用管理员权限来执行这个脚本,我们在调用SetSystemTime函数之前先做个判断,判断当前用户是否有管理员权限,如果没有就请求管理员权限即可,更正后的代码如下

import win32api
import ctypes, sys

def is_admin():
    try:
        #获取当前用户的是否为管理员
        return ctypes.windll.shell32.IsUserAnAdmin()
    except:
        return False

if is_admin():
    win32api.SetSystemTime(2020,11,1,11,13,10,10,0)
else:
    # 重新运行这个程序使用管理员权限
    ctypes.windll.shell32.ShellExecuteW(None, "runas", sys.executable, __file__, None, 1)


特别注意 :直接在IDE中运行py文件的时候,可能无法修改系统的时间,以上代码需要在cmd中运行才行。
 

以上是关于pywintypes.error: (1314, ‘****‘, ‘客户端没有所需的特权。‘)的主要内容,如果未能解决你的问题,请参考以下文章

无法修复 pywintypes.error: (2, 'BeginUpdateResource', '系统找不到指定的文件。')

win32gui.GetPixel() 不工作:pywintypes.error: (0, 'GetPixel', 'No error message is available')

cx_freeze/PyQt5: pywintypes.error: (2, 'BeginUpdateResource', '系统找不到指定的文件。'

win32ctypes.pywin32.pywintypes.error: (2, ‘LoadLibraryEx‘, ‘系统找不到指定的文件。‘)

AWS SAM-获取错误消息:pywintypes.error:(5,'CreateFile','访问被拒绝。')

python操作剪贴板错误提示:pywintypes.error: (1418, 'GetClipboardData',线程没有打开的剪贴板)