Board logo

标题: [文件操作] 如何监控进程不让软件扫描硬盘(写了源码求简化的方法) [打印本页]

作者: playinthesky    时间: 2015-11-14 01:47     标题: 如何监控进程不让软件扫描硬盘(写了源码求简化的方法)

比方QQ等,经常跳出对话框出来,要求更新安全模块,实则是扫描硬盘!为防止隐私泄露,就想到用批处理杀掉进程,于是:

首先我想到是这样:
  1. @echo off
  2. call D:\backup\qq\Bin\QQScLauncher.exe
  3. taskkill /f /im TXP* >NUL 2>NUL
  4. taskkill /f /im tad* >NUL 2>NUL
  5. taskkill /f /im QQP* >NUL 2>NUL
  6. taskkill /f /im QQC* >NUL 2>NUL
  7. taskkill /f /im SogouCloud.exe >NUL 2>NUL
  8. pause
复制代码
发现杀掉之后,又会出来!我就想了这样:
  1. @echo off&setlocal enabledelayedexpansion
  2. set T01=TXP
  3. set T02=tad
  4. set T03=QQP
  5. set T04=QQC
  6. set T05=SogouCloud.exe
  7. :start
  8. for /f %%i in ('tasklist') do (if !T01! equ %%i taskkill /f /im !T01!* >NUL 2>NUL)
  9. for /f %%j in ('tasklist') do (if !T02! equ %%j taskkill /f /im !T02!* >NUL 2>NUL)
  10. for /f %%k in ('tasklist') do (if !T03! equ %%k taskkill /f /im !T03!* >NUL 2>NUL)
  11. for /f %%l in ('tasklist') do (if !T04! equ %%l taskkill /f /im !T04!* >NUL 2>NUL)
  12. for /f %%m in ('tasklist') do (if !T05! equ %%m taskkill /f /im !T05!* >NUL 2>NUL)
  13. goto start
复制代码
问题在于1是特别消耗CPU,2是每次加一项屏蔽的进程,都需要重新写一边for循环,有没有好的办法,可以简化,求教各位大神!
作者: /zhqsystem/zhq    时间: 2015-11-14 17:56

本帖最后由 /zhqsystem/zhq 于 2015-11-14 18:03 编辑

  1. @echo off
  2. set "taskkill_name="txp","tad","QQP","QQC","SogouCloud""
  3. for /f "delims=" %%i in ('tasklist.exe') do (
  4. for %%j in (%taskkill_name%) do (
  5.   echo,%%~ni|findstr/i "%%~j" >nul 2>nul&&(
  6.    if /i not "%%~ni.exe"=="qqprotect.exe" (
  7.     rem:::说明:由于程序名称的可变性导致多写出这么多代码,将回显的值用于用途即可,自行替换
  8.     echo,%%~ni.exe
  9.    )
  10.   )
  11. )
  12. )
  13. pause
复制代码

作者: ads350668398    时间: 2015-11-14 18:26

号贴 好贴 收藏了




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2