Delphi编写后台监控软件
后台监控软件,为了达到隐蔽监控的目的,正常运行时不应该显示在任务栏上,也不应该显示在按Ctrl+Alt+Del出现的任务列表中。管理员可以通过热键调用隐藏的运行界面。为此,我们必须将当前流程转换为系统服务,并定义一个全局热键。
首先,将当前流程转变为系统服务:
目的是隐藏任务列表中的程序。调用API函数ReGISterServiceProcess实现。
其次,定义全局热键(在本例中,定义热键Ctrl+Del+R)。步骤:
1.定义钩子函数来捕获Windows消息WM_HOTKEY,即:procedure WM HOTKEY(var msg:twm HOTKEY);消息WM _ HOTKEY
2.向Windows添加一个全局atom myhotkey:globaladdAtom(' myhotkey ')并保留其句柄。
3.用Windows注册热键:调用API函数RegisterHotKey实现。
三。源程序:
unit Unit1
接口
使用
窗口、消息、窗体、对话框、类、控件、StdCtrls
type
t form 1 = class(t form)
button 1:t button;
button 2:t button;
过程FormCreate(发件人:to object);
过程按钮1Click(发件人:to object);
过程按钮2 click(Sender:to object);
过程表单关闭(发件人:TObjectvar Action:TCloseAction);
private
{热键标识ID }
ID:Integer;
过程WMHotKey(var Msg:TWMHotKey);消息WM _ HOTKEY
{普里瓦声明}
public
{公共声明}
end;
var
form 1:t form 1;
实现
常量RSP _简单_服务= 1;
函数RegisterServiceProcess(dwProcessID,dw type:DWord):DWord;stdcall外部'内核132。DLL ';
{$R *。DFM}
{捕捉热键消息}
proceduretform 1 . WM hotkey(var msg:twmhotkey);
begin
ifmsg . hotkey = id then
show message(' ctrl+alt+r键被按下!');
form1。可见:=真;
end;
0条评论