阅读:1206回复:1
一些函数不能在 大于PASSIVE_LEVEL的Irql上执行,怎么解决?
最近在用TDI做网站访问控制
有些网站是UTF-8编码的,所以我在驱动内自己解码,写了一个UTF-8到Gb2312的解码函数,但是里面用到RtlAnsiStringToUnicodeString。 但这时就有个问题, “Callers of RtlAnsiStringToUnicodeString must be running at IRQL = PASSIVE_LEVEL.”, 有时候在完成函数里接收时,Irql就高于PASSIVE_LEVEL,结果就蓝了 有没有办法解决这一问题? 还有,许多网站都是用gzip压缩的,我在驱动内直接解压,会不会非常影响系统性能? 做过这类东西的朋友给点意见,谢谢~ |
|
沙发#
发布于:2007-05-25 18:40
如果高于PASSIVE_LEVEL的话,放入自己创建的线程中,或者WorkItem去做
|
|
|