小弟写了一个拦截进程创建的小程序!
在XP下测试无问题!
在WIN7下发现钩子是挂上去了,但是根本就没有进入到我自己去处理的CreateProcess函数里面去.求高手赐教在WIN7如何拦截进程的创建!小弟感激不尽!

解决方案 »

  1.   

    1、你的DLL注入代码是怎么写的
    2、你使用的是什么注入方式(Windows钩子、远程线程还是其他的),以什么用户权限运行的
    2、被注入的进程是什么问题描述清楚点呀,不然别人怎么帮你呢!
      

  2.   


    非常感谢您浏览我发表在帖子.我又犯了同样的错误,没有把问题描述清楚十分抱歉。我用的是全局钩子,将我自己的DLL注入到explorer.exe当中,在代码里面我没有提权,不过我的程序在WIN7下是以管理员身份运行的!我是初学者,技术不好如果描述的不清除还请担待!非常感谢!
      

  3.   

    把你的DLL代码提升为Debug权限试试
      

  4.   

    CreateProcessA、CreateProcessW都要Hook的
      

  5.   

    放了几天了竟然还没人答。我来说下吧,在WIN7下,启动进程不走这个API了。走的是CreateProcessAsUser
    PS:好像是这个名。
      

  6.   

    那说不上,CreateProcess还是有人用的
    不过CreateProcess和CreateProcessAsUser都会经过CreateProcessInternalW
      

  7.   

    嗯,是这个名CreateProcessInternalW
      

  8.   


    您好!我是这么做的,不管是我自身的DLL还是调用的exe都提权.我自己去处理的函数也是CreateProcessA和CreateProcessW
      

  9.   


    非常感谢您浏览我发表的帖子!
    如果Hook这个API需要更改哪些操作呢?
      

  10.   


    非常感谢您浏览我发表的帖子!想请教一下Hook CreateProcess 和Hook CreateProcessInternalW的操作区别大吗?
      

  11.   

    差不多的,注意CreateProcessInternalW在windows2000不存在
      

  12.   

    我将CreateProcessA和CreateProcessW替换成CreateProcessInternalA和W在WIN7一样也不行,我在网上查很多人都说全局钩子在WIN7下已经失效了!
      

  13.   

    不是失效,而是受到了UIPI的限制
    最可能的原因是你的代码问题,而不网上很多人说的,我以前回复的帖子中不少贴主都说网上很多人说如何,其实很多是不对的,最好的是检查代码,查权威的资料,windows编程的就是msdn,wrk和windows via c/c++,windows interals等书籍
      

  14.   

    全局钩子在win7下可用的吧 至少我的win7没出过不可用现象