QT编写的可执行程序对于一些文件操作,比如写文件、删文件、写注册表等,会提示操作无效,主要是因为没有对C盘的相关权限。
解决方法:
1. 首先QT Creator要以管理员身份运行。
2. mingw编译器
在pro工程文件中加入
RC_FILE=main.rc
main.rc
1 24 uac.manifest
增加权限,uac.manifest:
<?xml version='1.0' encoding='UTF-8' standalone='yes'?>
<assembly xmlns='urn:schemas-microsoft-com:asm.v1' manifestVersion='1.0'>
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
<security>
<requestedPrivileges>
<requestedExecutionLevel level='requireAdministrator' uiAccess='false' />
</requestedPrivileges>
</security>
</trustInf