下面是exe 测试代码如何转到VB程序里面,使用的动态连接库,hook.dllunit untMain;interfaceuses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;type
TfrmCannotKill = class(TForm)
btn1: TButton;
btn2: TButton;
procedure btn1Click(Sender: TObject);
procedure btn2Click(Sender: TObject);
procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);
private
{ Private declarations }
public
{ Public declarations }
end;var
frmCannotKill: TfrmCannotKill;
InstallHook: function (MainHandle: HWND):Boolean; stdcall;implementation{$R *.dfm}procedure TfrmCannotKill.btn1Click(Sender: TObject);
var
ModuleHandle: THandle;
begin
ModuleHandle := LoadLibrary('Hook.dll');
if ModuleHandle = 0 then Exit;
@InstallHook := GetProcAddress(ModuleHandle, 'InstallHook');
if InstallHook(0) then
begin
btn1.Enabled := False;
ShowMessage('安装HOOK成功,现在任务管理器已经关不掉我了.');
end;
end;procedure TfrmCannotKill.btn2Click(Sender: TObject);
begin
Application.Terminate;
end;procedure TfrmCannotKill.FormCloseQuery(Sender: TObject;
var CanClose: Boolean);
begin
CanClose := False;
end;end.
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;type
TfrmCannotKill = class(TForm)
btn1: TButton;
btn2: TButton;
procedure btn1Click(Sender: TObject);
procedure btn2Click(Sender: TObject);
procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);
private
{ Private declarations }
public
{ Public declarations }
end;var
frmCannotKill: TfrmCannotKill;
InstallHook: function (MainHandle: HWND):Boolean; stdcall;implementation{$R *.dfm}procedure TfrmCannotKill.btn1Click(Sender: TObject);
var
ModuleHandle: THandle;
begin
ModuleHandle := LoadLibrary('Hook.dll');
if ModuleHandle = 0 then Exit;
@InstallHook := GetProcAddress(ModuleHandle, 'InstallHook');
if InstallHook(0) then
begin
btn1.Enabled := False;
ShowMessage('安装HOOK成功,现在任务管理器已经关不掉我了.');
end;
end;procedure TfrmCannotKill.btn2Click(Sender: TObject);
begin
Application.Terminate;
end;procedure TfrmCannotKill.FormCloseQuery(Sender: TObject;
var CanClose: Boolean);
begin
CanClose := False;
end;end.
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货