阅读:850回复:2
我的这个函数用softice怎么不能设断点?
VOID UuuDevice::Delay(int k)
{ int j=0; j=j+1;//这句是随便加的,为了设个断点,但是在整个 //delay()里面也设不了断点 for(int i=0;i<k;i++) { j=j+1; } } 另外有没有别的类似于这个Delay()延迟函数? |
|
|
沙发#
发布于:2004-05-11 12:53
KeDelayExecutionThread routine puts the current thread into an alertable or nonalertable wait state for a given interval.
NTSTATUS KeDelayExecutionThread( IN KPROCESSOR_MODE WaitMode, IN BOOLEAN Alertable, IN PLARGE_INTEGER Interval ); |
|
|
板凳#
发布于:2004-05-11 14:29
我在..\\Examples\\wdm\\Cam1394\\CamLowerDevice.cpp里面找到了一个 函数,好像必须得KeGetCurrentIrql() < DISPATCH_LEVEL才能用KeDelayExecutionThread()这个函数,我在Dpc_For_Isr()里面能用KeDelayExecutionThread()吗? 这是我找的那个函数: void CamLowerDevice::DelayCamera(LONG dwMsTime) { ASSERT(KeGetCurrentIrql() < DISPATCH_LEVEL); if (KeGetCurrentIrql() < DISPATCH_LEVEL) { LARGE_INTEGER DelayTime; DelayTime.QuadPart = -(dwMsTime * 10 * 1000); KeDelayExecutionThread(KernelMode, TRUE, &DelayTime); } } |
|
|