VS2010下的app.manifest

 在Win7下编程时可能有这样的情况,代码没有问题,但是执行时却会出现异常,如:System.Security.SecurityException: 不允许所请求的注册表访问权。只有以管理员身份运行时才能够正常运行。

这是Win7下UCA在起作用了。那好在VS的安装目录下有这么一个文件,它叫app.manifest.

我们可以看一下security下的内容。

<requestedPrivileges xmlns="urn:schemas-microsoft-com:asm.v3">
        <!-- UAC 清单选项
            如果要更改 Windows 用户帐户控制级别,请用以下节点之一替换
            requestedExecutionLevel 节点。

        <requestedExecutionLevel  level="asInvoker" uiAccess="false" />
        <requestedExecutionLevel  level="requireAdministrator" uiAccess="false" />
        <requestedExecutionLevel  level="highestAvailable" uiAccess="false" />

            指定 requestedExecutionLevel 节点将会禁用文件和注册表虚拟化。
            如果要利用文件和注册表虚拟化实现向后
            兼容性,则删除 requestedExecutionLevel 节点。
        -->
        <requestedExecutionLevel level="requireAdministrator" uiAccess="false" />
      </requestedPrivileges>

就是说我们有三种用户控制级别,第三种不知道是做什么的,但是默认是第一种,改成第二种就可以解决以上问题了,相信就是管理员权限了。

第三种可能会更高,是不是在做驱动程序时会用到呢(猜想的)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值