delphi 防止结束进程 或全局钩子

问题描述

delphi 防止结束进程 或全局钩子

各位大大,我的一个程序想防止被杀,网上找了很多资料,但delphi7能用的确实没找到,只需要windows的资源管理器不能结束就ok,其他没什么要求,
像全局hook也好,或是双进程亦或是三进程守护也罢.都可以,但一定要能用.谁能给我个代码,确实很急,消息方面是我的盲区,一点都不行,之前是自己学的数据库编程,其他没经验.还请各位大大们给点源码,只要能用就行.先行谢谢了.
但如果写进系统服务中,貌似听说win7中不能用,所以暂时不考虑这东西.

解决方案

你可以写个守护进程,守护进程启动后在后台允许,就做一件事判断如果你的进程结束了就重新启动程序。

时间: 2024-10-27 13:05:57

delphi 防止结束进程 或全局钩子的相关文章

用VC编程阻止全局钩子的加载

先说一下全局钩子是怎么进入到我们的程序里来的.假如有个程序A安装了WH_GETMESSAGE 的全局钩子,钩子函数在B.dll中,那么当其它程序在调用GetMessage函数从自己的消息队列 中取消息的时候,系统发现程序A安装了WH_GETMESSAGE的全局钩子,就会检查调用 GetMessage的进程是否加载了B.dll,如果没有,就调用LoadLibrary进行加载,然后调用 B.dll中的钩子过程.这样,钩子dll就会在所有调用GetMessage的进程中加载. 我们 要做的工作,就是在

防止全局钩子的入侵

Windows消息钩子一般都很熟悉了.它的用处很多,耳熟能详的就有--利用键盘钩子 获取目标进程的键盘输入,从而获得 各类密码以达到不可告人的目的.朋友想让他的软件不被别人的全局钩子监视,有没有办法实现呢?答案是 肯定的, 不过缺陷也是 有的. 首先简单看看全局钩子如何注入别的进程. 消息钩子是由Win32子系统提供,其核心部分通过NtUserSetWindowsHookEx为用户提供了设置消息钩子的系统服务,用户通过它注册全局钩子.当系统获取某些事件,比如用户按键,键盘driver将扫描码等传

C# 启动和结束进程

启动进程: private void StartProcess() { try { if (!CheckProcessExists()) { Process p = new Process(); p.StartInfo.FileName = System.IO.Path.Combine(Application.StartupPath, "DataTool.exe"); p.StartInfo.Arguments = "DataTool.exe"; p.StartIn

Win32开发入门(17):启动和结束进程

这里我再次说明一下,我不知道为什么,现在的人那么喜欢走极端,估计是价值观都"升级"了的 缘故吧. 我撰写这一系列Win32相关的文章,并不是叫大家一定要用Win32去开发项目,仅仅是 给大家了解一下,Win32是个啥东西而已. 另外,在专访中,有些人也误认为我说C++非学不可 ,那也不是,我也提到过了,C++的学习可以使你懂得更多知识,为你以为学习各种技术打下基础. 今天,我们来了解一下,在应用程序中,如何启动一个进程,然后把这个进程结束掉.实现这 一功能有替代方案,即使用.NET库中

linux 如何结束进程

首先使用ps -ef命令确定要杀死进程的PID,然后输入以下命令: # kill -pid 注释:标准的kill命令通常都能达到目的.终止有问题的进程,并把进程的资源释放给系统.然而,如果进程启动了子进程,只杀死父进程,子进程仍在运行,因此仍消耗资源.为了防止这些所谓的"僵尸进程",应确保在杀死父进程之前,先杀死其所有的子进程. *确定要杀死进程的PID或PPID # ps -ef | grep httpd 结束进程 # kill -l PID -l选项告诉kill命令用好像启动进程的

Win7任务管理器结束进程有诀窍

  Win7系统在稳定性和安全性上相比此前的XP和Vista已经有了很大提升,并且其多样化的智能操作带给我们更好的体验.但正是因为我们不断的安装程序,在使用久了之后,以及部分大型程序的运行中,还是会出现任务无响应的现象,这是因为某些程序自身的问题,或者计算机数据交换量过大,使得运算速度减慢引起的.这时候,我们通常的做法是关闭程序,偶尔会遇到程序既无法操作也无法关闭的问题,接下来就为大家介绍几种快速便捷关闭程序的方法. 方法一.使用任务管理器 任务管理器是一种专门管理任务进程的程序,是微软为了应对

任务管理器无法结束进程怎么的解决

  下面我们以结束一个貌似资源管理器的恶意进程exploror.exe为例,来讲述如何结束进程的几种方法. 方法一.用system权限来结束进程 这种方法的根本思路是,用system的权限来运行任务管理器taskmgr.exe,取得system权限后就可以结束任何进程了.要用到at命令.具体方法如下: 1. 通过在"开始→运行"窗口中CMD进入命令行界面. 2. 输入 time /t 获得现在的时间,假如是16:03. 3. 输入 at 16:05 /interactive taskm

win7任务管理器不能结束进程怎么办?

  1.单击开始菜单,在搜索框内输入"CMD". 2.按回车,打开命令提示符窗口. 3.在命令提示符窗口中输入:tasklist. 4.按回车,就会显示出当前运行的程序. 5.输入"Tskill+进程名",即可结束进程. 6.这样就可以结束任务管理器无法结束的进程. 7.记住,只要输入进程名,不用输入扩展名. 8.不要关闭System.SMSS.EXE和CSRSS.EXE进程.

Win7系统Word程序未响应不想结束进程该怎么办

  Win7已经成为人们首选的主流操作系统,它以系统稳定著称,但是Win7在软件兼容性方面往往不及WinXP,比如大家在运行Word程序时就会发现经常编辑到一半时卡了,提示"应用程序没有响应",结束进程那么之前工作白做了,不结束干等着也不见它响应,碰到这种情况该如何处理呢? 状况一: 当你在Win7系统上,打开Word进行大批量文字处理时,而电脑内存使用率偏高,那么在文档编辑过程中,就会出现Word文档突然程序未响应问题,那么需要静待一会才可以恢复正常.因为电脑物理内存不足所导致的Wo