gpt4 book ai didi

c++ - 检查windows shell是否加载完启动程序

转载 作者:行者123 更新时间:2023-11-28 08:26:26 24 4
gpt4 key购买 nike

我如何以编程方式检查 Windows 外壳(资源管理器)是否已加载所有启动程序以及用户登录过程是否已结束?

最佳答案

有一个记录在案的事件,您可以等待,但它会在资源管理器开始加载时发出信号。在 XP 上,此事件在 Vista 上称为“msgina: ShellReadyEvent”和“ShellDesktopSwitchEvent”。我在 post 中链接到一些替代 shell 的来源。与此事件有关。

另一种选择是监听 Taskbar Creation Notification message .它可以触发不止一次,因此您需要对其进行跟踪。

在 Vista+ 上,还有最后一个可能可行的选择:设置为在启动时运行的程序是作业对象的一部分,因此它们不能以高优先级运行。如果您的程序在启动时运行,您可以通过在循环中使用 IsProcessInJob 或 SetPriorityClass+GetPriorityClass 来检查这一点。 (SetPriorityClass 会谎报其返回值 IIRC)

关于c++ - 检查windows shell是否加载完启动程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3948600/

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