有没有办法可以在createprocess之后关闭这个程序的ASLR

解决方案 »

  1.   

    抓CREATE_PROCESS_DEBUG_EVENT 吧
      

  2.   

    调用CreateProcess的时候传入DEBUG_ONLY_THIS_PROCESS标识,启动调试模式,等待调试事件例如CREATE_PROCESS_DEBUG_EVENT,可以或得进程启动时的信息。
      

  3.   

    另外需要注意的是,以调试方式运行了进程之后,如果父进程退出,子进程会被结束。如果需要不结束子进程,可以调用DebugActiveProcessStop 来detach。
      

  4.   

    还有一点,DebugActiveProcessStop 是xp以上系统新加入的函数,win2000是没有的。win2000上只要调试了就无法分离