gpt4 book ai didi

directx - 检测全屏 Direct3D 应用程序

转载 作者:行者123 更新时间:2023-12-01 04:21:53 25 4
gpt4 key购买 nike

有没有办法通过 Direct3D API 检测以全屏模式运行的 Direct3D 应用程序?

SHQueryUserNotificationState , 可以indicate此类应用程序仅在 Vista 及更高版本上受支持。它也仅在 Explorer shell 运行时才有效。

最佳答案

我发现了如何检测全屏 Direct3D 和 OpenGL(例如 Minecraft)应用程序。

调用 IDirectDraw7::TestCooperativeLevel() .此函数返回 DDERR_EXCLUSIVEMODEALREADYSET如果事件的全屏 Direct3D 应用程序正在运行或用户 session 未处于事件状态(Win+L、Alt+Ctrl+Del、快速用户切换等)。

注:调用DirectDrawCreateExDDCREATE_EMULATIONONLY .这大大减少了 IDirectDraw7 的资源使用量。

我仅在带有 1 个显示器的 Windows 7 SP1 x64 中测试了此方法。

顺便说一句SHQueryUserNotificationState()返回 QUNS_BUSY而不是 QUNS_RUNNING_D3D_FULL_SCREEN用于全屏游戏。奇怪的...

关于directx - 检测全屏 Direct3D 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1219454/

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