C++暂停外部程序

C++ Pause External Program

本文关键字:程序 外部 暂停 C++      更新时间:2023-10-16

是否有可能通过暴力暂时暂停外部程序的执行?或者具有类似效果的东西。

我已经看到了这个beforce,一个曾经随我的华硕笔记本电脑附带的第三方软件,但是我对他们如何管理它感到困惑。

您可以发送信号进行处理。根据您的操作系统,它们的含义不同。捕获信号的程序可能会终止、休眠或继续。

这是一本关于信号的手册:http://www.cs.cf.ac.uk/Dave/C/node24.html

总之:

使用 kill(不要害怕,这些函数只是称为 kill,不会自行终止任何内容)向已知的进程 ID 发送信号。您可以在 linux 中使用终端中的 ps aux 获取进程 ID。这个 Linux 信号看起来很有希望:

SIGCONT 19 /* continue a stopped process */
int kill(int pid, int signal) 
  • 向进程 PID 发送信号的系统调用。如果 pid 大于零,则信号将发送到进程 ID 等于 pid 的进程。如果 pid 为 0,则信号将发送到除系统进程之外的所有进程。

我对Windows SIGNAL代码了解不多,但它应该类似。不知道他们处理的信号代码是否与Linux不同。

还有:信号(int number,functionPointer)来调用函数,如果你的程序得到一个特定的信号。

我不知道蛮力,但你可能只是在程序中设置一个调试中断,这会暂停它。