xiaoseqq
驱动牛犊
驱动牛犊
  • 注册日期2008-09-18
  • 最后登录2008-10-22
  • 粉丝0
  • 关注0
  • 积分2分
  • 威望2点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:2609回复:2

关闭进程驱动

楼主#
更多 发布于:2008-10-22 10:37
最我我找了份可以关闭进程的驱动来研究,驱动编译好了tl.sys,通过delphi调用成功。
现在我想用汇编来实现加载的功能。
ring3程序是传递PID到驱动中来实现功能的,但是我通过DeviceIoControl来传递参数时出了问题,我可以手工指定PID传入就没问题,现在我是想通过输入到文本框中,通过
GetDlgItemText获取以后再传,可是这样做了以后,驱动就不能停止进程,各位有没有遇到这个问题,现在我真不知道怎么来传这个PID,希望大家能帮帮我.完整代码可加我QQ:4595464
关键代码如下:
IOControl proc hWin:HWND
    local adwInBuffer:DWORD
    lea esi,adwInBuffer
    assume esi:ptr DWORD
    invoke GetDlgItemText,hWin,1006,offset PID,255
    mov [esi],1564;只需要把这里换成PID传就可以,但是关键不知道怎么动态传
    invoke CreateFile, $CTA0("\\\\.\\KILLPS_Drv"), GENERIC_READ + GENERIC_WRITE, 0, NULL, OPEN_EXISTING, 0, NULL
    .if eax != NULL
        mov hFile,eax
        invoke MessageBox,hWin,addr InBuffer,$CTA0("进程PID:"),MB_OK
        invoke DeviceIoControl,hFile,ASMIOCTL_PID,addr InBuffer,8,NULL,NULL,addr dwBytesReturned,NULL
        invoke CloseHandle,hFile
        
    .endif
    
    ret

IOControl endp
wowocock
VIP专家组
VIP专家组
  • 注册日期2002-04-08
  • 最后登录2016-01-09
  • 粉丝16
  • 关注2
  • 积分601分
  • 威望1651点
  • 贡献值1点
  • 好评度1227点
  • 原创分1分
  • 专家分0分
沙发#
发布于:2008-10-23 13:48
atoi
花开了,然后又会凋零,星星是璀璨的,可那光芒也会消失。在这样 一瞬间,人降生了,笑者,哭着,战斗,伤害,喜悦,悲伤憎恶,爱。一切都只是刹那间的邂逅,而最后都要归入死亡的永眠
heiye88
驱动牛犊
驱动牛犊
  • 注册日期2008-01-25
  • 最后登录2009-12-30
  • 粉丝0
  • 关注0
  • 积分1分
  • 威望11点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2008-12-26 14:47
动态搜寻替换就是了....
游客

返回顶部