windwos核心编程进程

Posted hshy

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了windwos核心编程进程相关的知识,希望对你有一定的参考价值。

启动以管理员身份运行有2中方式。
1.筛选令牌。意思就是,默认情况下,一个进程启动时,会与筛选令牌进行关联,所以权限受限,但是最终用户可以通过右击图标菜单,以run as admin来运行程序。然后就会有UAC的安全提示框提示是否继续。
2.提升进程的权限,VS开发过程。
判断一个进程是以提升的权限来启动的,还是正在使用筛选的令牌运行的?

GetCurrentProcess---------得到当前进程句柄
OpenProcessToken--------打开当前进程关联的令牌。(会得到一个令牌句柄)
GetTokenInformation-----------获得与进程关联的令牌的信息(记得使用TokenElevationType参数来获得提升类型)

如果令牌没有被筛选过,用IsUserAnAdmin函数来判断进程是否正在以管理员的身份运行是最理想的。

如果令牌已经被筛选,然后需要通过给GetTokenInformation传递TokenLinkedToken参数来获取一个未筛选的令牌,然后判断其中是否包含一个管理员SID。

CreateWellKnowSid---------传递WinbuiltinAministratorsSid参数来创建一个与管理员组一致的SID。

CheckTokenMembership----------检查一个令牌的权限组。

以上是关于windwos核心编程进程的主要内容,如果未能解决你的问题,请参考以下文章

Python核心编程总结(五多任务编程之进程与线程)

windows核心编程--3有关进程的三个函数

Windows核心编程之核心总结(第四章 进程)(2018.6.17)

Windows核心编程之核心总结(第四章 进程)(2018.6.8)

Windows核心编程之核心总结(第四章 进程)(2018.6.21)

windows核心编程之进程间共享数据