中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
作者:
标题: 如何调用配置文件分析进程 上一主题 | 下一主题
luckboy45
中级用户




积分 487
发帖 212
注册 2007-4-1
状态 离线
『楼 主』:  如何调用配置文件分析进程

我有一段进程分析程序的代码,无法实现用.INI文件调用,希望各位帮忙完善下!~

:saomiao
cls
@echo off
set space=                       
echo.
echo 程序分析如下:
echo =========================================================================
echo.
echo 进程名称              进程说明
echo.
call tasklist.exe

::以下定义程序说明,自己可以补充。
set System=『系统进程』
set smss.exe=『系统进程』调用对话管理子系统和负责操作你系统的对话
set csrss.exe=『系统进程』管理Windows图形相关任务
set winlogon.exe=『系统进程』
set services.exe=『系统进程』管理启动和停止服务
set lsass.exe=『系统进程』用于本地安全和登陆策略
set svchost.exe=『系统进程』用来运行动态链接库dll文件
set CCenter.exe=·瑞星信息中心
set RavMonD.exe=·瑞星监控程序
set rfwsrv.exe=·瑞星个人防火墙相关程序
set spoolsv.exe=『系统进程』打印服务
set RavStub.exe=·瑞星杀毒软件相关程序
set wdfmgr.exe=·MP10播放器的相关程序
set explorer.exe=·负责显示系统桌面的图标,任务栏等
set RfwMain.exe=·瑞星防火墙主程序
set RavTask.exe=·瑞星定时杀毒程序
set RavMon.exe=·瑞星监控程序
set SOUNDMAN.EXE=·Realtek声卡相关程序
set realsched.exe=·RealPlayer自动升级程序
set ctfmon.exe=·提供语音识别、手写识别等
set conime.exe=·输入法编辑器相关程序
set wmiprvse.exe=·WINAMP播放器相关程序
set iexplore.exe=·IE浏览器程序--如果在没开IE的情况下出现则中了病毒
set cmd.exe=·正在运行的批处理程序
set tasklist.exe=·本程序调用的相关命令行工具
::主程序
setlocal enabledelayedexpansion
for /f "tokens=1" %%i in ('tasklist /NH') do (
   set str=%%i %space%
   set str=!str:~0,20!
   if defined %%i (echo !str! !%%i!) else echo !str! ‖→未定义程序) >>loge.txt
echo =========================================================================
@echo       ************************************************************
@echo       #                                                          #
@echo       #               进程分析完毕!                      #
@echo       #                                                          #
@echo       ************************************************************
@start loge.txt




::以下定义程序说明,自己可以补充。
set System=『系统进程』
set smss.exe=『系统进程』调用对话管理子系统和负责操作你系统的对话
set csrss.exe=『系统进程』管理Windows图形相关任务
set winlogon.exe=『系统进程』
set services.exe=『系统进程』管理启动和停止服务
set lsass.exe=『系统进程』用于本地安全和登陆策略
set svchost.exe=『系统进程』用来运行动态链接库dll文件
set CCenter.exe=·瑞星信息中心
set RavMonD.exe=·瑞星监控程序
set rfwsrv.exe=·瑞星个人防火墙相关程序
set spoolsv.exe=『系统进程』打印服务
set RavStub.exe=·瑞星杀毒软件相关程序
set wdfmgr.exe=·MP10播放器的相关程序
set explorer.exe=·负责显示系统桌面的图标,任务栏等
set RfwMain.exe=·瑞星防火墙主程序
set RavTask.exe=·瑞星定时杀毒程序
set RavMon.exe=·瑞星监控程序
set SOUNDMAN.EXE=·Realtek声卡相关程序
set realsched.exe=·RealPlayer自动升级程序
set ctfmon.exe=·提供语音识别、手写识别等
set conime.exe=·输入法编辑器相关程序
set wmiprvse.exe=·WINAMP播放器相关程序
set iexplore.exe=·IE浏览器程序--如果在没开IE的情况下出现则中了病毒
set cmd.exe=·正在运行的批处理程序
set tasklist.exe=·本程序调用的相关命令行工具
这段代码我想把它放到JINCHENG.INI里面调用,但没能实现,希望各位能帮忙实现下!~先谢谢各位了!~

[ Last edited by bjsh on 2007-7-31 at 12:41 PM ]



逍遥@浪子@反病毒
2007-6-23 18:50
查看资料  发短消息 网志   编辑帖子  回复  引用回复
luckboy45
中级用户




积分 487
发帖 212
注册 2007-4-1
状态 离线
『第 2 楼』:  

没人知道怎么搞吗?或者是不屑?自己顶一下吧!~



逍遥@浪子@反病毒
2007-6-24 18:01
查看资料  发短消息 网志   编辑帖子  回复  引用回复
slore
铂金会员





积分 5212
发帖 2478
注册 2007-2-8
状态 离线
『第 3 楼』:  

Scan.bat:

  Quote:
cls
@echo off
set space=                       
echo.
echo 程序分析如下:
echo =========================================================================
echo.
echo 进程名称              进程说明
echo.
call tasklist.exe
::读取配置
for /f "delims=" %%i in (taskname.ini) do Set %%i
::主程序
setlocal enabledelayedexpansion
for /f "tokens=1" %%i in ('tasklist /NH') do (
   set str=%%i %space%
   set str=!str:~0,20!
   if defined %%i (echo !str! !%%i!) else echo !str! ‖→未定义程序) >>loge.txt
echo =========================================================================
@echo       ************************************************************
@echo       #                                                          #
@echo       #               进程分析完毕!                      #
@echo       #                                                          #
@echo       ************************************************************
@start loge.txt
pause>nul

taskname.ini:
System=『系统进程』
smss.exe=『系统进程』调用对话管理子系统和负责操作你系统的对话
csrss.exe=『系统进程』管理Windows图形相关任务
winlogon.exe=『系统进程』
services.exe=『系统进程』管理启动和停止服务
lsass.exe=『系统进程』用于本地安全和登陆策略
svchost.exe=『系统进程』用来运行动态链接库dll文件
CCenter.exe=·瑞星信息中心
RavMonD.exe=·瑞星监控程序
rfwsrv.exe=·瑞星个人防火墙相关程序
spoolsv.exe=『系统进程』打印服务
RavStub.exe=·瑞星杀毒软件相关程序
wdfmgr.exe=·MP10播放器的相关程序
explorer.exe=·负责显示系统桌面的图标,任务栏等
RfwMain.exe=·瑞星防火墙主程序
RavTask.exe=·瑞星定时杀毒程序
RavMon.exe=·瑞星监控程序
SOUNDMAN.EXE=·Realtek声卡相关程序
realsched.exe=·RealPlayer自动升级程序
ctfmon.exe=·提供语音识别、手写识别等
conime.exe=·输入法编辑器相关程序
wmiprvse.exe=·WINAMP播放器相关程序
iexplore.exe=·IE浏览器程序--如果在没开IE的情况下出现则中了病毒
cmd.exe=·正在运行的批处理程序
TM.exe=·Tencent Messenger即时聊天软件
tasklist.exe=·本程序调用的相关命令行工具


2007-6-24 18:16
查看资料  发短消息 网志   编辑帖子  回复  引用回复
lxmxn
版主




积分 11386
发帖 4938
注册 2006-7-23
状态 离线
『第 4 楼』:  

我也来玩一下 ^_^


processlist.ini

  Quote:
;此配置文件是关于进程说明的资料,需要自己手动添加
;配置格式如下: set <进程名>=<说明文字>
;以下是配置信息:

set System=『系统进程』
set smss.exe=『系统进程』调用对话管理子系统和负责操作你系统的对话
set csrss.exe=『系统进程』管理Windows图形相关任务
set winlogon.exe=『系统进程』
set services.exe=『系统进程』管理启动和停止服务
set lsass.exe=『系统进程』用于本地安全和登陆策略
set svchost.exe=『系统进程』用来运行动态链接库dll文件
set CCenter.exe=·瑞星信息中心
set RavMonD.exe=·瑞星监控程序
set rfwsrv.exe=·瑞星个人防火墙相关程序
set spoolsv.exe=『系统进程』打印服务
set RavStub.exe=·瑞星杀毒软件相关程序
set wdfmgr.exe=·MP10播放器的相关程序
set explorer.exe=·负责显示系统桌面的图标,任务栏等
set RfwMain.exe=·瑞星防火墙主程序
set RavTask.exe=·瑞星定时杀毒程序
set RavMon.exe=·瑞星监控程序
set SOUNDMAN.EXE=·Realtek声卡相关程序
set realsched.exe=·RealPlayer自动升级程序
set ctfmon.exe=·提供语音识别、手写识别等
set conime.exe=·输入法编辑器相关程序
set wmiprvse.exe=·WINAMP播放器相关程序
set iexplore.exe=·IE浏览器程序--如果在没开IE的情况下出现则中了病毒
set cmd.exe=·正在运行的批处理程序
set tasklist.exe=·本程序调用的相关命令行工具

GetProcess.bat
@Echo off&SetLocal EnableDelayedExpansion

::对进程变量进行赋值
for /F "eol=; delims=" %%a in (processlist.ini) do %%a

for /F "tokens=1" %%a in (' tasklist /nh ') do (
        set _=%%a                                         
        if defined %%a (call echo\!_:~0,20! ----- !%%a!) else (call echo\!_:~0,20! ----- 未知进程)
)
pause
[ Last edited by lxmxn on 2007-6-24 at 06:31 PM ]

2007-6-24 18:30
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
lxmxn
版主




积分 11386
发帖 4938
注册 2006-7-23
状态 离线
『第 5 楼』:  再改进一点

忽略对System IDle System的分析,获得 ProcessID 。
@Echo off&SetLocal EnableDelayedExpansion

::对进程变量进行赋值
for /F "eol=; delims=" %%a in (processlist.ini) do %%a

echo 进程名称             进程ID  进程说明
for /F "tokens=1,2" %%a in ('tasklist/nh^|more,+2') do (
        set _=%%a                                         
        set __=%%b            
        if defined %%a (call echo\!_:~0,20! !__:~0,8!!%%a!) else (call echo\!_:~0,20! !__:~0,8!未知进程)
)
pause
[ Last edited by lxmxn on 2007-6-24 at 06:44 PM ]

2007-6-24 18:43
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: