c++ - 让我的过程保持活力 - 永远

标签 c++ windows process

是否可以阻止用户(甚至是管理员)终止我的程序?
或者万一被杀死,它会迅速恢复自身?

更新: 澄清一下:我正在编写一个监控程序,类似于家长控制,它记录用户对 PC 的操作。你可以通过查看我最近的其他问题来猜测。
这样的程序首先需要的是活着!

现在,有人帮忙吗?

最佳答案

首先,不要那样做。第二,还是不要那样做。

第三,如果你的程序太棒了,它永远不会停止运行,你总是可以提供安装一个服务来运行你的程序并在它死掉时重新启动它的能力。但是请仔细考虑一下,因为用户通常会对不会死的程序感到非常恼火。相反,让你的程序足够有用,没有人会希望它停止运行,并在它死掉时重新启动它。

编辑:好的,鉴于您对 OP 的更新,让我们在这里尝试一些想法。

有两种基本情况需要考虑:如果最终用户在机器上拥有管理员权限,那么在一般情况下您几乎无能为力。具有管理权限的人可以绕过您的任何尝试。

那么如果用户没有管理员权限怎么办。那么用户就不能杀死由 root/administrator 启动的任意进程。在这种情况下,您可以尝试将软件安装为守护程序样式/始终运行。在 Windows 上,您将安装为系统服务,在启动时自动启动。对于 Solaris,您可以使用 SMF 并将其设置为在终止时自动重启。在 Linux 上,您可以执行类似于 root 拥有的 shell 的操作,该 shell 会在程序退出时无限循环并重新启动该程序。

关于c++ - 让我的过程保持活力 - 永远,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5236842/

相关文章:

C++ SDL 键盘响应

.net - Windows 窗体 DataGridView 的 ItemDataBound?

python - 如何获取某个区域的像素值?

c - 我想打开新的 cmd 提示符并从 cmd 提示符插入参数

c - Linux在父进程和子进程之间使用c中的两个管道传递值?

c++ - 子进程会影响父进程的环境吗?

c++ - BOOST_PP_SEQ_SIZE 如何工作?

c++随机列表元素不被循环删除

python - 与从 stdin 读取的 C++ 代码等效的 Python 是什么?

process - 如何使用 cron 终止正在运行的 python 脚本并重新启动它?