zt698
驱动牛犊
驱动牛犊
  • 注册日期2006-09-23
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分34分
  • 威望229点
  • 贡献值0点
  • 好评度31点
  • 原创分0分
  • 专家分0分
阅读:1945回复:1

在passthru中,创建线程,卸载后会蓝屏,是怎么回事?

楼主#
更多 发布于:2008-11-20 13:55
 在passthru中,创建线程,卸载后会蓝屏,是怎么回事?
线程代码:
void fraThread()
{
    while (1)
    {
    }
}

在DriverEntry中创建线程:
HANDLE hFrag = NULL;
            
 if (PsCreateSystemThread(&hFrag, THREAD_ALL_ACCESS, NULL,
            NULL, NULL, fraThread, NULL) != STATUS_SUCCESS)
{
    DBGPRINT(("Create send thread failed\n"));
    break;
}
ZwClose(hFrag);
附件名称/大小 下载次数 最后更新
passthru.rar (4KB)  36 2008-11-20 14:05
zhaock
驱动太牛
驱动太牛
  • 注册日期2002-01-26
  • 最后登录2018-06-02
  • 粉丝3
  • 关注2
  • 积分73328分
  • 威望362317点
  • 贡献值1点
  • 好评度226点
  • 原创分0分
  • 专家分0分
  • 社区居民
沙发#
发布于:2008-11-23 17:15
卸载的时候,通知创建的线程自己结束。不然当这个线程被调度执行的时候,所执行的代码已经被卸载,导致指针非法而蓝屏
游客

返回顶部