使用C++ Boost我正在创建一个命令行应用程序。 由于某些原因,我需要启动我的可执行文件的命令提示符的PID。 可执行文件与C++一起用boost编译并内置在Eclipse IDE中获取从C++启动提示的进程ID可执行文件
-2
A
回答
1
没有办法让您的应用程序知道创建它的进程的PID。
如果您正在查找当前进程的PID,请查看ms c++ get pid of current process(因为您明显在Windows上运行)。
如果你正在寻找的父进程的PID,唯一的解决方法是让父进程将它传递给子进程的说法:
- 从命令行应用程序,check this post和提取您的PID (CMD.EXE的PID)
- 它传递给你的程序:> myprogram.exe%PID%
- 从你的程序的主要功能,得到父母的PID顺利通过使用
argv[1]
。
或者,你可以试试这个:当你的程序运行,cmd.exe
窗口标题改变,让出现在它的程序名(命令运行)。因此,如果您在代码中执行的操作与tasklist /v /fo csv | findstr /i "myprogram"
相同,则输出将显示正在运行的cmd.exe进程的PID。
>tasklist /v /fo csv | findstr /i "myprogram"
"cmd.exe","44372","Console","1","4 900 Ko","Running","DOMAIN\USER","0:00:00","cmd.exe - myprogram"
注意,如果许多项目都开始了,你就无法知道谁是谁。但是,如果只有一个有效,这应该可以做到。
相关问题
- 1. 从进程ID获取进程可执行文件名称
- 2. 如何在C++程序中启动可执行文件并获取其进程ID(在Linux中)?
- 3. 启动程序,并获取进程ID
- 4. 从c#中的可执行文件中提取文件
- 5. 启动后获取进程ID psexec
- 6. 从网站启动可执行文件?
- 7. 获取启动进程的PID C++
- 8. 使CEF使用单独的可执行文件启动子进程(C++/Windows)
- 9. 如何获取通过execvp启动的进程的进程ID()
- 10. Python启动可执行文件,然后TCP连接到进程
- 11. 在资源中启动一个进程(可执行文件)
- 12. 启动C在启动时raspbian可执行文件
- 13. 如何从二进制可执行文件中提取位
- 14. 使用SSH2获取启动进程的进程ID - phpseclib
- 15. 获取可执行文件
- 16. 从程序集vs进程获取当前可执行文件的名称?
- 17. 启动Win32进程A启动进程B - 获取B的ID/HWND
- 18. 从C#调用Fortran可执行文件的进程
- 19. 从服务启动的可执行文件中获取服务名称
- 20. 获取执行路径 - 我从哪里启动jar文件
- 21. 从C++获取python可执行文件的完整路径
- 22. 从Windows命令提示符执行命令可执行文件
- 23. 主要可执行文件运行启动程序可执行文件,然后启动程序运行主要可执行文件
- 24. 是否可以从gdbserver获取远程可执行文件名?
- 25. 从另一个MPI程序中启动MPI可执行文件
- 26. 从可执行位置启动程序
- 27. 在Visual Studio中启动.NET可执行文件进行调试?
- 28. 从C#可执行文件启动Windows 10商店应用程序
- 29. 使用另一个可执行文件的命令行参数启动进程
- 30. 从进程名称获取进程ID
问题是,代码如何获得正在执行的进程的PID?或者是关于其他程序获取它启动的进程的PID?或者是关于其他程序获取独立启动的程序Xyz实例的PID?请在这里更清楚一点。 –
“提示”不是一个进程,因此它没有PID。你想要识别什么*流程? –
我打开命令提示符,然后通过转到该路径执行exe文件。所以在这种情况下,它不是一个提示符,而是在打开的cmd上运行的cmd.exe进程,并显示在taskmanager中@HarryJohnston –