CreateProcess函数回来的进程ID和任务管理器的不同

Posted HunterK

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CreateProcess函数回来的进程ID和任务管理器的不同相关的知识,希望对你有一定的参考价值。

1 void Proc()
2 {
3     STARTUPINFO si = { 0 };
4     PROCESS_INFORMATION pi = { 0 };
5     CreateProcess("c:/windows/system32/calc.exe", "", NULL, NULL, FALSE, 0, NULL, NULL, &si, &pi);
6     printf("进程ID=%d,进程句柄%d\n", pi.dwProcessId, pi.hProcess); 
7 }

 

代码执行后,开启计算器calc.exe, pi.dwProcessId 返回的进程ID 与 任务管理器里的PID不同。

 

解决方法:

  通过代码打开记事本程序 notepad.exe 正常

 

问题原因:

  在网上找了一些,没找到原因。如果有知道原因的,请留言。 谢谢~~

以上是关于CreateProcess函数回来的进程ID和任务管理器的不同的主要内容,如果未能解决你的问题,请参考以下文章

windows 下在进程中使用createprocess创建一个窗口进程,并获取这个窗口HWND句柄

启动 Mozilla Firefox 时如何获取进程 ID?

CreateProcess 函数中的问题!

NT 服务的 CreateProcess 挂起

猎豹MFC--创建进程CreateProcess--4种方法

CreateProcess() API 函数有啥用?