PoBlockConsoleSwitch
INT64 __fastcall PoBlockConsoleSwitch(_DWORD *a1){
int ActiveConsoleId;
union _LARGE_INTEGER Interval;
Interval.QuadPart = -100000i64;
while( 1 )
{
ActiveConsoleId = RtlGetActiveConsoleId();
if( ActiveConsoleId != -1 )
{
a1[4] = 0;
if( (int)PopDispatchStateCallout(a1, (__int64)&ActiveConsoleId) >= 0 )
break;
}
KeDelayExecutionThread(0, 0, &Interval);
}
return RtlGetActiveConsoleId();
}Referenced by:
PnprQuiesceDevices
PoPowerOffMonitor
PopAcquireAdaptiveLock
PopBlockSessionSwitch
PopDirectedDripsNotifyAppsAndServices
PopIssueActionRequest