清单在VS2015中不工作

本文关键字:工作 VS2015 | 更新日期: 2023-09-27 18:08:56

我正试图让我的程序写入HKLM密钥。为了实现这一点,我尝试创建一个清单文件:

<?xml version="1.0" encoding="utf-8"?>
<assembly manifestVersion="1.0" xmlns="urn:schemas-microsoft-com:asm.v1">
  <assemblyIdentity version="1.0.0.0" name="MyApplication.app"/>
  <trustInfo xmlns="urn:schemas-microsoft-com:asm.v2">
    <security>
      <requestedPrivileges xmlns="urn:schemas-microsoft-com:asm.v3">
        <requestedExecutionLevel level="requireAdministrator" uiAccess="false" />
      </requestedPrivileges>
    </security>
  </trustInfo>
  <compatibility xmlns="urn:schemas-microsoft-com:compatibility.v1">
    <application>
    </application>
  </compatibility>
</assembly> 

但即使有这个文件,我仍然得到一个异常:

"System.UnauthorizedAccessException" in mscorlib.dll 
Cannot write to the registry key.

我正在使用VS2015。我点击创建新元素,然后选择Manifest文件。将名称设置为MyProgram.exe.manifest。然后在项目属性中选择适当的清单。最后,我将Manifest文件中的执行级别更改为requireadadministrator并重新构建程序。

但是当我执行MyProgram.exe时,它从不显示UAC窗口,当我试图写入HKLM时抛出异常。所以我怀疑清单不能正常工作。

请建议。谢谢你! !

清单在VS2015中不工作

你可以这样做:

    使用管理员运行程序。
  • 没有权限设置权限。