![]() | 1 fy 2016-07-03 02:40:27 +08:00 你搞个管理员权限 cmd 去执行就好了。 |
![]() | 2 xupefei 2016-07-03 02:50:33 +08:00 HKCU\SOFTWARE\Microsoft\Windows\DWM 写入并不需要管理员权限。 如果 py 坚持要管理员权限,你可以直接调用 WIN32 API 。 |
![]() | 3 emric 2016-07-03 02:54:15 +08:00 不能用 bat 或者 reg 吗 |
![]() | 7 emric 2016-07-03 03:38:30 +08:00 for /F "skip=1 tokens=1,2,*" %%i IN ('reg query "HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\DWM" /v AccentColor') DO set COLOR=%%k reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa" /v AccentColorInactive /t REG_DWORD /d %COLOR% /f 存至 bat ,右键管理员运行 |
![]() | 8 mxalbert1996 2016-07-03 03:51:30 +08:00 via Android 管理员权限的 cmd 里运行的所有程序都具有管理员权限,如果还不行那就说明不是管理员权限的问题。 |
![]() | 9 xupefei 2016-07-03 05:20:40 +08:00 Document of _winreg.OpenKey(key, sub_key[, res[, sam]]): sam is an integer that specifies an access mask that describes the desired security access for the key. Default is KEY_READ. sam 权限不对。 改正后应该是不需要管理员权限就能用的。 |
10 BMW 2016-07-03 07:05:26 +08:00 via iPhone 搞开发的就不应该用 windows 吧 |
![]() | 11 kindjeff 2016-07-03 10:16:36 +08:00 via iPhone 用管理员方式打开 cmd 然后在 cmd 里执行不行么 |
![]() | 13 ksc010 2016-07-03 11:45:03 +08:00 rem 在 win7 下右击此脚本,然后以管理员身份运行 rem 需要 把 python.exe 所在的目录加入环境变量 @echo off if not "%1" == "uac" ( echo 申请 UAC 权限... goto GetUAC ) else ( goto DO ) :GetUAC echo Set UAC = CreateObject^("Shell.Application"^) > "%temp%\getadmin.vbs" echo UAC.ShellExecute "%~s0", "uac", "", "runas", 1 >> "%temp%\getadmin.vbs" "%temp%\getadmin.vbs" exit /B :DO if exist "%temp%\getadmin.vbs" ( del "%temp%\getadmin.vbs" ) pushd "%CD%" CD /D "%~dp0" python.exe %~dp0XXXXX.py pause XXXXX.py 是脚本名称 存储为 bat 文件 双击运行自动弹出 UAC 授权 |
![]() | 14 emric 2016-07-03 12:00:02 +08:00 |
![]() | 15 dtfm OP @xupefei 感谢,你这个给了我思路,应该是忘了加上读写权限了,虽然_winreg 是 Python2 时代的语法了。 这一行应该是这样: key = winreg.OpenKeyEx(winreg.HKEY_CURRENT_USER, r"SOFTWARE\Microsoft\Windows\DWM",0,winreg.KEY_ALL_ACCESS) |
![]() | 18 dtfm OP 感谢楼上的诸位,已经完全搞定,介绍放在了知乎专栏上: https://zhuanlan.zhihu.com/p/21477137 下载地址: https://1drv.ms/f/s!AplN36d0zPo8hR8x1KgzdIuyBS7t |
20 somebody 2016-07-03 17:03:29 +08:00 via Android 对可执行文件和快捷方式,右键-属性-兼容性-以管理员权限运行 .py 文件不知道,不过你可以建一个.lnk 快捷方式调 Python |