以非管理员身份运行代码

本文关键字:运行 代码 身份 管理员 | 更新日期: 2023-09-27 18:29:29

我正在编写调用IApplicationActivationManager接口以打开windows商店应用程序的代码。

我得到错误:

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

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

我是否可以(通过更改项目设置或其他方式)以非管理员身份进行调试

我可以强制我的exe以非管理员身份运行吗?(当它在野外时)

C4ud3x很有帮助地指出,这可以添加到app.manifest中。这是真的,但不幸的是,如果调用程序允许,它仍将以管理员身份运行(实际上是默认值)。看起来asInvoker也是最低的值。

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

编辑:好吧,我接受第一个问题的唯一答案是不要以管理员的身份运行视觉工作室。谢谢你在这方面的帮助。

以非管理员身份运行代码

在项目资源管理器中展开"properties"并打开"app.manifest"。你可以在那里添加这一行:

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

"AsInvoker"意味着应用程序是用登录用户的权限级别启动的。

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

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