Delphi编写后台监控软件-Delphi-优质IT资源分享社区

admin
管理员
管理员
  • UID1
  • 粉丝26
  • 关注4
  • 发帖数581
  • 社区居民
  • 忠实会员
  • 原创写手
阅读:111回复:0

Delphi编写后台监控软件

楼主#
更多 发布于:2016-06-10 20:04

 后台监控软件,为了到达
隐秘监控的
方针,应当满意
变形运转时,不显现在
任务栏上,在按Ctrl+Alt+Del显现的
任务列表中也不显现,管理员
能够经过热键调出
潜藏的运转界面 。要作到这些,有必要把现在
进程变为一个体系效劳,并且界说大局热键 。
一、把现在
进程变为一个体系效劳:
方针是在
任务列表中把程序
潜藏起来 。调用API函数RegisterServiceProcess完成 。
网站简略有用的SEO优化窍门用U盘安装Win8双体系图文教程
窍门来自于实践 用好手中相机拍人像大片安卓刷机教程(HTC通用)
二、界说大局热键(本例中界说热键Ctrl+Del+R),过程:
1、界说
擒获Windows
信息WM_HOTKEY的钩子函数,即:procedure WMHotKey(var Msg : TWMHotKey); message
WM_HOTKEY;
2、向Windows参加一个大局原子 Myhotkey: GlobalAddAtom(’MyHotkey’), 并保存其句柄 。
史上最简略好方法 小单反拍出高挑大长腿邻家有女初长成 学拍温暖柔美人像写真
精彩相片拍摄教育:按快门前五问自己迅速进步拍摄技能 离别10个菜鸟疑问
3、向Windows
刊出热键:调用API函数RegisterHotKey完成 。
三、源程序:
unit Unit1;
interface
uses
Windows, Messages, Forms, Dialogs, Classes, Controls, StdCtrls;
type
TForm1 = class(TForm)
Button1: TButton;
Button2: TButton;
procedure FormCreate(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
private
{热键标识ID}
id: Integer;
procedure WMHotKey(var Msg : TWMHotKey); message WM_HOTKEY;
{ Privat-Declarations}
public
{ Public-Declarations}
end;
var
Form1 : TForm1;
implementation
const RSP_SIMPLE_SERVICE=1;
function RegisterServiceProcess (dwProcessID, dwType: DWord) : DWord;
stdcall; external ’KERNEL32.DLL’;
{$R *.DFM}
{
擒获热键
信息}
procedure TForm1.WMHotKey (var Msg : TWMHotKey);
begin
if msg.HotKey = id then
ShowMessage(’Ctrl+Alt+R键被按下!’);
form1.Visible :=true;
end;
procedure TForm1.FormCreate(Sender: TObject);
Const
{ALT、CTRL和R键的
虚拟键值}
MOD_ALT = 1;
MOD_CONTROL = 2;
VK_R = 82;
begin
{首要揣度程序是不是现已运转}
if GlobalFindAtom(’MyHotkey’) = 0 then
begin
{注册大局热键Ctrl + Alt + R}
id:=GlobalAddAtom(’MyHotkey’);
RegisterHotKey(handle,id,MOD_CONTROL+MOD_Alt,VK_R);
end
else
halt;
end;
{把现在
进程变为一个体系效劳,从而在
任务列表中把程序
潜藏起来}
procedure TForm1.Button1Click(Sender: TObject);
begin
RegisterServiceProcess(GetCurrentProcessID,RSP_SIMPLE_SERVICE);
form1.Hide;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
close;
end;
{退出时
开释大局热键}
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
UnRegisterHotKey(handle,id);
GlobalDeleteAtom(id);
end;
end.
四、
注明:

后台监控软件中
运用以上
性能,可真实完成
隐秘运转,热键调出,便于管理员进行管理 。程序在Win98,Delphi5.0中运转经过 。
后台监控软件,为了到达
隐秘监控的
方针,应当满意
变形运转时,不显现在
任务栏上,在按Ctrl+Alt+Del显现的
任务列表中也不显现,管理员
能够经过热键调出
潜藏的运转界面 。要作到这些,有必要把现在
进程变为一个体系效劳,并且界说大局热键 。
一、把现在
进程变为一个体系效劳:
方针是在
任务列表中把程序
潜藏起来 。调用API函数RegisterServiceProcess完成 。
二、界说大局热键(本例中界说热键Ctrl+Del+R),过程:
1、界说
擒获Windows
信息WM_HOTKEY的钩子函数,即:procedure WMHotKey(var Msg : TWMHotKey); message
WM_HOTKEY;
2、向Windows参加一个大局原子 Myhotkey: GlobalAddAtom(’MyHotkey’), 并保存其句柄 。
3、向Windows
刊出热键:调用API函数RegisterHotKey完成 。
三、源程序:
unit Unit1;
interface
uses
Windows, Messages, Forms, Dialogs, Classes, Controls, StdCtrls;
type
TForm1 = class(TForm)
Button1: TButton;
Button2: TButton;
procedure FormCreate(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
private
{热键标识ID}
id: Integer;
procedure WMHotKey(var Msg : TWMHotKey); message WM_HOTKEY;
{ Privat-Declarations}
public
{ Public-Declarations}
end;
var
Form1 : TForm1;
implementation
const RSP_SIMPLE_SERVICE=1;
function RegisterServiceProcess (dwProcessID, dwType: DWord) : DWord;
stdcall; external ’KERNEL32.DLL’;
{$R *.DFM}
{
擒获热键
信息}
procedure TForm1.WMHotKey (var Msg : TWMHotKey);
begin
if msg.HotKey = id then
ShowMessage(’Ctrl+Alt+R键被按下!’);
form1.Visible :=true;
end;
procedure TForm1.FormCreate(Sender: TObject);
Const
{ALT、CTRL和R键的
虚拟键值}
MOD_ALT = 1;
MOD_CONTROL = 2;
VK_R = 82;
begin
{首要揣度程序是不是现已运转}
if GlobalFindAtom(’MyHotkey’) = 0 then
begin
{注册大局热键Ctrl + Alt + R}
id:=GlobalAddAtom(’MyHotkey’);
RegisterHotKey(handle,id,MOD_CONTROL+MOD_Alt,VK_R);
end
else
halt;
end;
{把现在
进程变为一个体系效劳,从而在
任务列表中把程序
潜藏起来}
procedure TForm1.Button1Click(Sender: TObject);
begin
RegisterServiceProcess(GetCurrentProcessID,RSP_SIMPLE_SERVICE);
form1.Hide;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
close;
end;
{退出时
开释大局热键}
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
UnRegisterHotKey(handle,id);
GlobalDeleteAtom(id);
end;
end.
四、
注明:

后台监控软件中
运用以上
性能,可真实完成
隐秘运转,热键调出,便于管理员进行管理 。程序在Win98,Delphi5.0中运转经过 。











优质IT资源分享社区为你提供此文。
本站有大量优质Delphi教程视频,资料等资源,包含Delphi基础教程,高级进阶教程等等,教程视频资源涵盖传智播客,极客学院,达内,北大青鸟,猎豹网校等等IT职业培训机构的培训教学视频,价值巨大。欢迎点击下方链接查看。
Delphi教程视频
优质IT资源分享社区(www.itziyuan.top)
一个免费,自由,开放,共享,平等,互助的优质IT资源分享网站。
专注免费分享各大IT培训机构最新培训教学视频,为你的IT学习助力!

!!!回帖受限制请看点击这里!!!
!!!资源失效请在此版块发帖说明!!!

[PS:按 CTRL+D收藏本站网址~]

——“优质IT资源分享社区”管理员专用签名~

本版相似帖子

游客