我想使子进程得到父进程句柄,用管道好像不行啊,怎么弄啊?
最后给段代码

解决方案 »

  1.   

    示例代码:DWORD dwID,dwParentID;
    HANDLE hParent,hSnapshot;
    dwID=GetCurrentProcessId();

    hSnapshot=CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS,0);
    if(hSnapshot!=INVALID_HANDLE_VALUE)
    {
    PROCESSENTRY32 pe32={sizeof(PROCESSENTRY32)};
    BOOL bRet=Process32First(hSnapshot,&pe32);
    if(pe32.th32ProcessID==dwID )
    {
    dwParentID=pe32.th32ParentProcessID;
    hParent=OpenProcess(PROCESS_ALL_ACCESS,TRUE,dwParentID);
    }
    while(Process32Next(hSnapshot,&pe32))
    {
    if(pe32.th32ProcessID==dwID )
    {
    dwParentID=pe32.th32ParentProcessID;
    hParent=OpenProcess(PROCESS_ALL_ACCESS,TRUE,dwParentID);
    } }
    CloseHandle(hSnapshot);}其中变量hParent就是你要找的父进程句柄。
      

  2.   

    http://www.codeguru.com/cpp/w-p/win32/article.php/c1437/
    http://www.codeproject.com/KB/threads/ParentPID.aspx
      

  3.   

    http://www.cnblogs.com/wiseman/articles/286096.html
      

  4.   

    GetCurrentProcessId 
    OpenProcess