能力值:
( LV2,RANK:10 )
|
-
-
2 楼
pIOPM = (IOPM*)ExAllocatePool(NonPagedPool,sizeof(IOPM));
if (Ke386QueryIoAccessMap(0,pIOPM))
{
__asm{
mov ecx, pIOPM
add ecx, 64h / 8
mov eax, [ecx]
bts eax, 64h MOD 8
mov [ecx], eax
}
//RtlFillMemory(pIOPM,sizeof(IOPM),0xFF);
if(Ke386SetIoAccessMap(1, pIOPM) && Ke386IoSetAccessProcess(PsGetCurrentProcess(), 1)){
__asm{
mov al, 0xfe
out 0x64, al
}
}
ExFreePool(pIOPM);
}else return;
这样写也没没用。我怀疑是IOPL提前接管了?
|
|
|