登录  
 加关注
查看详情
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

梦想之鹰的天空

天高任鸟飞......放飞....心情..........放飞.....梦想

 
 
 

日志

 
 

ASRCLEAN 设计文档  

2008-04-22 13:17:41|  分类: 桌面应用 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

ASR注册表清理程序设计思路

1.需要实现的功能

1.1 从HKEY_LOCAL_MACHINE\HARDWARE\DEVICEMAP\Scsi下取出当前使用的ASR服务列表。

1.2 清除不被使用的服务及相关键值。

1) 从木鸟提供的服务列表中去除正在使用的ASR服务,并导入数组存放需要清除的服务。

2) 从HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services下删除不需要的服务,同时删除HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\CriticalDeviceDatabase、HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Enum\Root下的相关内容。

1.3 清除非ASR服务及相关内容。

    使用服务的ImagePath来判断相关服务是否正在使用,含有Bird则没有使用,否则认为正在使用。

2. 实现方法

2.1 初步决定使用MFC中的CRegKey类库来访问注册表。

2.2 提供参数供用户选择是直接清除,还是生成批处理清除。

2.3 要提供详细的日志信息,记录所有清除的内容。

2.4 用一个函数实现删除一个服务的所有相关操作。

2.5 SDK: GetWindowsDirectory()

2.6 程序的使用方法:

由于程序使用了MFC,因此需要MFC的运行库支持(晕啊,本来用VC就是不想要运行库的)。运行库文件如下:

MSVCRTD.DLL

MFC42D.DLL

MSVCP60D.DLL

将上述DLL文件放到%windir%\system32目录下即可。

源代码编译环境: Visual C++ 6.0。

木鸟封装工具ASR Tools配套注册表清理工具 - 版本 1.0

作者:Climbing (xclimbing@gmail.com)

日期:2006年5月13日

版权所有 (C) Climbing 2006.

本程序开放源代码并免费提供使用,但由本程序造成的一切损失,作者概不负责!

ASRClean [/ASRList:ListFile] [/OtherList:ListFile] [/Delete:ListFile]

         [/DeleteDriverFile] [/DriverPath:BirdDriverPath]

         [/GenCmd:CmdFile] [/Log:LogFile] [/NoLog] [/NoRegBackup]

         [/Quiet] [/?][/h][/help]

参数说明(所有参数不区分大小写):

/ASRList:ListFile

    由木鸟提供的加入注册表的ASR设备服务列表文件,默认:ASRList.txt

    本程序会检测系统中正在使用的ASR设备服务,并据此将ASRList中没有

    使用的其它服务进行删除。

/OtherList:ListFile

    除ASR设备外,其它加入注册表的设备服务列表文件,默认:OtherList.txt

    本程序会根据服务的ImagePath中是否含有下面的DriverPath来判断该服务是否

    正在使用,如果含有,则认为没有使用,将进行删除操作。

/Delete:ListFile

    由用户直接提供的需要删除的服务列表文件,本程序将根据该文件直接进行服务

    的清除,从而忽略上面两个参数。

/DeleteDriverFile

    删除木鸟的ASR Tools所添加的驱动文件,驱动文件路径由下面的参数提供。

    注1:原则上不推荐用户删除这些文件,否则有可能造成系统不能启动。

    注2:本程序1.0版没有实现直接从程序中删除驱动的操作,只能通过批处理实现。

/DriverPath:BirdDriverPath

    木鸟的ASR Tools所添加的驱动文件所在的目录,默认:BIRD。

    注意:该目录应该在%windir%\System32目录下。

/GenCmd:CmdFile

    生成所有清除操作的批处理文件,默认文件名:ASRClean.cmd。

    使用该参数后,本程序将不进行任何清除操作,而是生成对应的批处理文件。

    推荐用户使用该参数!本程序默认直接清除,不生成批处理文件。

/Log:LogFile

    生成日志文件,默认日志文件名:ASRClean.log。日志文件记录了程序所做的所

    有清除操作,这是本程序的默认参数。

/NoLog

    不生成日志文件。不推荐用户使用!

/NoRegBackup

    不备份要清除的注册表内容。本程序默认备份要清除的注册表的内容,推荐备份!

/Quiet

    让本程序静默运行,不产生任何屏幕输出。不推荐用户使用!

/? 或 /h 或 /help

    本使用帮助。

命令示例:

    1. 程序不加任何参数直接运行,相当于命令行:

    ASRClean /ASRList:ASRList.txt /OtherList:OtherList.txt /Log:ASRClean.log

    2. 从ASRList.txt及OtherList.txt中输入添加的服务列表,删除驱动文件,将所有

       清除操作生成ASRClean.Cmd,不产生用户显示及日志文件。命令行如下:

    ASRClean /GenCmd /DeleteDriverFile /NoLog /Quiet

    3. 从asr.txt及other.txt中输入添加的服务列表,并生成MyClean.cmd批处理文件,

       同时记录程序日志到ASRClean.log中。命令行如下:

    ASRClean /ASRList:asr.txt /OtherList:other.txt /GenCmd:MyClean.cmd /log

  评论这张
 
阅读(470)| 评论(0)

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018