| 网站首页 | 资讯 | Hack | 漏洞 | 网管 | 编程 | 培训 | 品黑页 | 软件 | 论坛 | 动画 | 视频 | 经典 | 教学站 | 黑客点睛 | 
服务导航 我要发布 主力频道 空间域名 精华收集 服务器出租 黑客培训 光盘刻录 特色服务 解决方案 我要投诉
您现在的位置: 华夏黑客同盟 >> 编程 >> 其它编程 >> 正文 用户登录 新用户注册
[推荐]编写后台监控软件的技巧           ★★★ 【字体:
编写后台监控软件的技巧
作者:不详 文章来源:华盟收集 点击数: 更新时间:2007-5-15
后台监控软件,为了达到隐蔽监控的目的,应该满足正常运行时,不显示在任务栏上,在按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中运行通过。 

责任编辑:朱倩  联系方式  Email:朱倩
电话:51228163
  • 上一篇编程:

  • 下一篇编程:
  • (只显示最新5条。评论内容只代表网友观点,与本站立场无关!)
    姓 名:
    * 游客填写  ·注册用户
    主 页:
    评 分:
    1分 2分 3分 4分 5分
    评论内容:
    验证码: *
  • 请遵守《互联网电子公告服务管理规定》及中华人民共和国其他各项有关法律法规。
  • 严禁发表危害国家安全、损害国家利益、破坏民族团结、破坏国家宗教政策、破坏社会稳定、侮辱、诽谤、教唆、淫秽等内容的评论 。
  • 用户需对自己在使用本站服务过程中的行为承担法律责任(直接或间接导致的)。
  • 本站管理员有权保留或删除评论内容。
  • 评论内容只代表网友个人观点,与本网站立场无关。
  • 最新hack更新
    最新推荐资讯
    相关编程
    编写高级JavaScript代码
    简单监控文件挂马程序
    编RealPlayer木马思路
    动手编写简单远程控制
    Java后台服务程序设计
    VB编写的QQ自动登录器
    利用VB编写破坏性木马
    ipsecpol的规则脚本编写
    利用VB编写破坏性木马
    VB编写标准CGI程序下
    最新会员软件
    最新推荐视频
    最新推荐动画

    Copyright @ 2005 77169.Net Inc. All rights reserved. 华夏黑客同盟 版权所有
    北京市电信通提供网络带宽

    mailto:webmaster@77169.net
    咨询QQ号:836982 / 59280880
    联系站长 QQ38588913
    热线电话: 86-10-67634029/676229433
    京ICP证041431号