gpt4 book ai didi

c# - 如何访问正在运行的应用程序的应用程序 list ?

转载 作者:太空宇宙 更新时间:2023-11-03 18:32:34 24 4
gpt4 key购买 nike

我需要找到一种方法来保证使用我的库的人在应用程序 list 中将 requestedExecutionLevel 设置为最小值 highestAvailable,如下所示:

<requestedPrivileges xmlns="urn:schemas-microsoft-com:asm.v3">
<requestedExecutionLevel level="highestAvailable" uiAccess="false" />
</requestedPrivileges>

当他们没有正确设置 list 时,我想抛出一个异常,以便开发人员了解这一需求,而无需阅读文档。

主要问题:是否可以访问此信息,如果可以,如何访问?

我没有检查此设置,而是考虑过检查此设置的结果。当设置为 highestAvailable 时,我希望管理员组的任何用户部分都以管理员身份运行。

这可以使用:

最佳答案

您的方法有缺陷,使用您的库的开发人员会非常不喜欢它。问题是 list 并不是让进程提升运行的唯一方法。事实上,当你调试代码时几乎从来没有这样做过,Visual Studio 托管进程是你运行的 EXE 并且具有事件 list ,没有“highestAvailable”。开发人员将改为提升 Visual Studio 本身,他启动的程序会继承安全 token 并将运行提升。

真正想知道的是进程在使用您的库时是否被提升并且用户帐户属于管理员组。这很难做到,如果进程没有以提升的方式运行,那么安全 token 就是普通用户之一。

您需要密码 available here .如果 IsUserInAdminGroup 为真且 IsProcessElevated 为假,则抛出异常。

关于c# - 如何访问正在运行的应用程序的应用程序 list ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20099851/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com