大家有没有在com组件上创建线程的经验?上面的代码在XP SP2上竟然出现数据执行保护的错误,郁闷死了

解决方案 »

  1.   

    不要在DLL_PROCESS_ATTACH时干这个事。
      

  2.   

    查了一下关于数据保护的情况 最后用VirtualAlloc分配并设置为
    MEM_COMMIT,PAGE_EXECUTE属性,也就是说线程的地址空间是不可写的,然后把线程代码复制过去运行 还是不行最后查明是Sleep开始后 线程进入了等待 可是等待结束后 下一条指令就是随机的
    根本不是线程中的指令,也就是线程的空间好象是可以被随意更改的,但是我已经设置PAGE_EXECUTE属性了啊,线程试图运行其他地址当然就会出现错误,请问是怎么回事?