我用CreateProcess启动了一个程序后,却不能用TerminateProcessx结束。这是怎么回事?该怎么解决?

解决方案 »

  1.   

    权限该怎么设置?我随便启动了一个NotePad。
      

  2.   

    CreateProcess后用::TerminateProcess没有遇到问题呀,把你的代码贴出来看看
      

  3.   

    代码是这样的,帮我看看。HANDLE m_process;PROCESS_INFORMATION pi;
    STARTUPINFO si;ZeroMemory(&si, sizeof(si));
    si.cb=sizeof(si);
    si.wShowWindow=SW_SHOW;
    si.dwFlags=STARTF_USESHOWWINDOW;CreateProcess(NULL,
    "C:\\windows\\notepad.exe",
                          NULL,
                          NULL,
                          FALSE,
                          NORMAL_PRIORITY_CLASS|CREATE_NEW_CONSOLE,
                          NULL,
                          NULL,
                          &si,
                          &pi);m_process=pi.hProcess;if (m_process != NULL)
    {
        TerminateProcess(m_process,0);
        m_process = NULL;
    }
      

  4.   

    xp, vs6. 楼上代码工作正常。
      

  5.   

    ExitProcess();
    TerminateProcess();
    创建进程的时候,用默认权限就可以!另外你还可一向你创建的进程的主窗口发送消息SendMessage(hProcess,WM_CLOSE)