以非管理员身份运行代码

时间:2014-11-07 13:38:55

标签: c# visual-studio windows-8.1 user-permissions

我正在编写调用IApplicationActivationManager interface来打开Windows应用商店的代码。

我收到错误:

"[Name of App] can't run while File Explorer is running with Administrator privileges..."

我必须以非管理员身份启动我的应用。我也没有控制管理员上下文,调用我将创建的.exe代码。所以,有两个问题:

我可以(通过更改项目设置或其他内容)以非管理员身份进行调试吗?

我可以强制我的exe作为非管理员运行吗? (当它在野外出现时)

C4ud3x帮助指出这可以添加到app.manifest。这是事实,但不幸的是,如果调用者允许它(它实际上是默认值),它仍将作为管理员运行。看起来asInvoker似乎是lowest value

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

编辑: 我接受第一个问题的唯一答案就是不要以视觉工作室的身份运行管理员。感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

在您的项目资源管理器中展开&#39;属性&#39;并打开你的app.manifest&#39;。 你可以在那里添加这一行:

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

&#39; AsInvoker&#39;表示应用程序以登录用户的权限级别启动。

这一行应该已经自动生成并在清单中注释掉了。

修改
啊,等等。 DEBUGGING ???你需要以非管理员身份运行???不知道权限在调试模式下的行为。