如何使用Qt在Windows C驱动器上写入文本文件

use*_*690 0 c++ qt

我想使用Qt C ++在Windows的C驱动器上写一个文件

QFile file("C:/key.txt");
if (!file.exists())
{
    file.open(QIODevice::WriteOnly | QIODevice::Text);
    file.write("0");
    file.close();
}
Run Code Online (Sandbox Code Playgroud)

但是什么都没写在C上,我想我应该给它管理员权限,以便它可以写到C盘,但是我搜索并找到了QFile :: setpermissions,但是它也没有解决问题,
所以有什么办法可以解决我的问题,请
感谢Avdance

Nik*_*ita 5

您需要以管理员权限运行应用程序以写入C:。它需要绕过UAC。为此,请嵌入清单:

QMAKE_LFLAGS += /MANIFESTUAC:"level='requireAdministrator' uiAccess='false'"
Run Code Online (Sandbox Code Playgroud)

或者您可以调整您的应用清单

<trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">
  <security>
    <requestedPrivileges>
      <requestedExecutionLevel level="requireAdministrator" uiAccess="false"/>
    </requestedPrivileges>
  </security>
</trustInfo> 
Run Code Online (Sandbox Code Playgroud)