OBJECT_ATTRIBUTES attr={sizeof(OBJECT_ATTRIBUTES), 0,NULL,NULL};
attr.Attributes=0;
pid=(ULONG)PsGetCurrentProcessId();
pd.UniqueProcess=(HANDLE)pid;
pd.UniqueThread=(HANDLE)-1;rc=NtOpenProcess(&han,PROCESS_DUP_HANDLE,&attr,&pd);为什么老是无法打开进程?总是返回STATUS_ACCESS_VIOLATION(0xc0000005)
参数换成 PROCESS_ALL_ACCESS也无法成功.
代码在中断级执行.

解决方案 »

  1.   

    起初在zndev.com发贴,哎完全当你是透明,觉的csdn人气多一点但驱动方面的问题比较冷清,或许这在大牛眼力很简单就是懒于高抬贵手,所以请知道的朋友帮下忙,如果你也正为这问题困扰就一起聊聊oicq:8858839
      

  2.   

    ZwOpenProcess,使用会说未定义,但是我又不会导出
      

  3.   

    HANDLE hProcee = NULL;
    CLIENT_ID pd;
    OBJECT_ATTRIBUTES attr={sizeof(OBJECT_ATTRIBUTES), 0, NULL, NULL};
    attr.Attributes = 0;
    pd.UniqueProcess=(HANDLE)PsGetCurrentProcessId();
    pd.UniqueThread=(HANDLE)0;//这里改为0就OK啦!

    rc = NtOpenProcess(&hProcee, PROCESS_DUP_HANDLE, &attr, &pd);
      

  4.   

    这些 东西 手边要有一个 ddk,  ifs更好..
      

  5.   

    这种问题在zndev真的不会有人理会的,呵呵