我正在使用system()来调用可执行程序(A服务器)。现在过了一段时间我想从我的c程序本身终止这个程序。有谁知道如何做到这一点? 操作系统正在运行:(http://rcn-ee.net/deb/rootfs/precise/ubuntu-12.04-r4-minimal-armhf-2012-07-16.tar.xz)如何从c程序中终止一个exe
回答
最好的方法这是使用一个函数,可以让您更好地控制生成的过程,而不是system()
。但是,这将是平台特定的。
对于Windows,使用
CreateProcess()
它返回一个HANDLE
,你可以在以后使用中TerminateProcess()
杀死进程。对于Unix,使用
fork()
和exec()
,让你的孩子的过程,你可以在以后使用中kill()
杀进程的PID。
我正在运行linux。我如何获得进程ID? – user1179510 2012-07-23 04:30:48
'fork()'系统调用创建两个进程之一,在子进程中返回0,在父进程中返回子进程的pid。搜索诸如“fork exec tutorial”之类的东西,以获取如何使用这些函数的示例。 – 2012-07-23 04:34:16
好的。让我试试看! – user1179510 2012-07-23 04:35:51
- 1. 如何在c中终止程序?
- 2. 如何从C++程序执行c#exe
- 3. 终止一个.net程序
- 4. 如何从另一个应用程序终止一个应用程序
- 5. 如何从C#服务中终止Java应用程序
- 6. 父进程在C#中终止时如何终止子进程
- 7. 从另一个线程终止C++中的线程
- 8. 如何从AlertDialog终止应用程序?
- 9. C程序不会终止
- 10. 程序意外终止C++
- 11. 如何在Qt中终止线程C++
- 12. 如何在VC++ EXE程序中嵌入一个EXE文件
- 13. 如何终止一个std ::线程?
- 14. 如何终止一个线程?
- 15. 从我的Cocoa代码中终止一个应用程序
- 16. 如何在Java中终止程序?
- 17. 如何从WiX中终止进程
- 18. 如何将命令从另一个.exe和C++发送到.exe?
- 19. 如何在c#控制台应用程序中止时终止子进程?
- 20. 如何在c#中通知程序执行和终止?
- 21. 如何从socket C++中终止线程读取?
- 22. Bash脚本 - 如何知道一个程序已经终止
- 23. Ctrl-C如何终止子进程?
- 24. 从python终止一个linux命令行实用程序
- 25. 如何从另一个c程序启动c程序
- 26. 防止C#EXE
- 27. 检测程序终止(C,Windows)
- 28. C#应用程序意外终止
- 29. C++ SDL程序立即终止
- 30. C++应用程序不会终止
哪个操作系统?最简单的方法是使用'system'来代替kill命令,但为此设计的API函数是更好的选择。 – chris 2012-07-23 04:11:46