VB拦截windows删除文件(API HOOK)

上传者: gouyue | 上传时间: 2025-10-30 11:49:42 | 文件大小: 348KB | 文件类型: RAR
VB拦截Windows Explorer删除进程,内含API HOOK,源代码:倒霉蛋儿,程序有时候也会窗口勾挂失败!   勾住了SHFileOperation等函数,DLL用Delphi写的C会的太少,查了半天才知道原来explorer是用SHFileOperation删除文件,经过测试很稳定,没有出现崩溃的情况,由于只勾住了SHFileOperation函数,所以别的程序要是调用DeleteFile删除文件,拦截不到,要是想拦截DeleteFile自己接着写吧。      mod_Inject.bas类的注释摘录:   Dim MyAddr As Long ‘执行远程线程代码的起始地址。这里等于LoadLibraryA的地址   ‘dll文件路径   MyDllFileLength = LenB(StrConv(MyDllFileName, vbFromUnicode)) + 1    ‘这里把dll文件名从Unicode转换成Ansi,否则英文字母是2个字节。 _   顺便说一下,学过C的应该知道字符串要以/0标志结尾,所以dll文件名长度要加上1个字节存放Chr(0)   ‘得到进程的句柄   在目标进程中申请分配一块空白内存区域。内存的起始地址保存在MyDllFileBuffer中。 _   这块内存区域我们用来存放dll文件路径,并作为参数传递给LoadLibraryA。   在分配出来的内存区域中写入dll路径径。注意第二个参数传递的是MyDllFileBuffer的内容, _   而不是MyDllFileBuffer的内存地址?   If MyReturn = 0 Then Inject = False   MyAddr = GetProcAddress(GetModuleHandle("Kernel32"), "LoadLibraryA")   ‘得到LoadLibraryA函数的起始地址。他的参数就是我们刚才写入的dll路径。但是LoadLibraryA本身是不知道参数在哪里的。 _   接下来我们就用CreateRemoteThread函数告诉他参数放在哪里了? If MyAddr = 0 Then Inject = False   MyResult = CreateRemoteThread(ProcessHandle, 0, 0, MyAddr, MyDllFileBuffer, 0, 0)   好了,现在用CreateRemoteThread在目标进程创建一个线程,线程起始地址指向LoadLibraryA, _   参数就是MyDllFileBuffer中保存的dll路径?    If MyResult = 0 Then    Inject = False    Else    Inject = True    End If    ‘接下来你可以使用WaitForSingleObject等待线程执行完毕。 _    并用GetExitCodeThread得到线程的退出代码,用来判断时候正确执行了dll中的代码。    CloseHandle MyResult    CloseHandle ProcessHandle    ‘扫地工作   End Function

文件下载

资源详情

[{"title":"( 18 个子文件 348KB ) VB拦截windows删除文件(API HOOK)","children":[{"title":"codefans.net","children":[{"title":"Hook DeleteFile","children":[{"title":"ApiHook.dll <span style='color:#111;'> 359.00KB </span>","children":null,"spread":false},{"title":"ApiHook","children":[{"title":"MyApi.dcu <span style='color:#111;'> 875B </span>","children":null,"spread":false},{"title":"Hook_Pas.pas <span style='color:#111;'> 2.23KB </span>","children":null,"spread":false},{"title":"ApiCallBack.pas <span style='color:#111;'> 3.42KB </span>","children":null,"spread":false},{"title":"ApiCallBack.dcu <span style='color:#111;'> 2.91KB </span>","children":null,"spread":false},{"title":"Hook_Pas.dcu <span style='color:#111;'> 1.44KB </span>","children":null,"spread":false},{"title":"MyApi.pas <span style='color:#111;'> 804B </span>","children":null,"spread":false},{"title":"ApiHook.cfg <span style='color:#111;'> 450B </span>","children":null,"spread":false},{"title":"ApiHook.~dpr <span style='color:#111;'> 1.53KB </span>","children":null,"spread":false},{"title":"ApiHook.dpr <span style='color:#111;'> 1.60KB </span>","children":null,"spread":false},{"title":"ApiHook.dof <span style='color:#111;'> 2.15KB </span>","children":null,"spread":false}],"spread":true},{"title":"frmMain.frx <span style='color:#111;'> 4B </span>","children":null,"spread":false},{"title":"frmMain.frm <span style='color:#111;'> 3.91KB </span>","children":null,"spread":false},{"title":"Windows.pas <span style='color:#111;'> 1.13MB </span>","children":null,"spread":false},{"title":"mod_Inject.bas <span style='color:#111;'> 6.60KB </span>","children":null,"spread":false},{"title":"VBP_Protect_System.vbw <span style='color:#111;'> 124B </span>","children":null,"spread":false},{"title":"mod_HookMessage.bas <span style='color:#111;'> 1.95KB </span>","children":null,"spread":false},{"title":"VBP_Protect_System.vbp <span style='color:#111;'> 801B </span>","children":null,"spread":false}],"spread":true}],"spread":true}],"spread":true}]

评论信息

免责申明

【只为小站】的资源来自网友分享,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,【只为小站】 无法对用户传输的作品、信息、内容的权属或合法性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论 【只为小站】 经营者是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。
本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二条之规定,若资源存在侵权或相关问题请联系本站客服人员,zhiweidada#qq.com,请把#换成@,本站将给予最大的支持与配合,做到及时反馈和处理。关于更多版权及免责申明参见 版权及免责申明