7、BIOS可以被映射
因为BIOS使用的ROM比我们使用的普通内存RAM要慢很多,所以人们就想出在启动后把BIOS的ROM里面的信息拷贝到我们插的内存条(RAM)里来,提高读取速度,而在RAM里的这些BIOS的信息就叫做BIOS影子内存。
8、BIOS与CMOS区别
在日常操作和维护计算机的过程中,常常可以听到有关BIOS设置和CMOS设置的一些说法,许多人对BIOS和CMOS经常混为一谈。本文主要阐述对BIOS设置和CMOS设置在基本概念上的区分与联系。
BIOS是什么?
所谓BIOS,实际上就是微机的基本输入输出系统(Basic Input-Output System),其内容集成在微机主板上的一个ROM芯片上,主要保存着有关微机系统最重要的基本输入输出程序,系统信息设置、开机上电自检程序和系统启动自举程序等。
BIOS的功用
BIOS ROM芯片不但可以在主板上看到,而且BIOS管理功能如何在很大程度上决定了主板性能是否优越。BIOS管理功能主要包括:
1. BIOS中断服务程序
BIOS中断服务程序实质上是微机系统中软件与硬件之间的一个可编程接口,主要用来在程序软件与微机硬件之间实现衔接。例如,DOS和Windows操作系统中对软盘、硬盘、光驱、键盘、显示器等外围设备的管理,都是直接建立在BIOS系统中断服务程序的基础上,而且操作人员也可以通过访问INT 5、INT 13等中断点而直接调用BIOS中断服务程序。
2.BIOS系统设置程序
微机部件配置记录是放在一块可读写的 CMOS RAM 芯片中的,主要保存着系统基本情况、CPU特性、软硬盘驱动器、显示器、键盘等部件的信息。在 BIOS ROM芯片中装有"系统设置程序",主要用来设置CMOS RAM中的各项参数。这个程序在开机时按下某个特定键即可进入设置状态,并提供了良好的界面供操作人员使用。事实上,这个设置CMOS参数的过程,习惯上也称为" BIOS设置"。一旦CMOS RAM芯片中关于微机的配置信息不正确时,轻者会使得系统整体运行性能降低、软硬盘驱动器等部件不能识别,严重时就会由此引发一系统的软硬件故障。
3. POST上电自检
微机按通电源后,系统首先由POST(Power On Self Test,上电自检)程序来对内部各个设备进行检查。通常完整的POST自检将包括对 CPU、640K基本内存、 1M以上的扩展内存、ROM、主板、CMOS存贮器、串并口、显示卡、软硬盘子系统及键盘进行测试,一旦在自检中发现问题,系统将给出提示信息或鸣笛警告。
4. BIOS系统启动自举程序
系统在完成 POST自检后, ROM BIOS 就首先按照系统 CMOS设置中保存的启动顺序搜寻软硬盘驱动器及CD-ROM、网络服务器等有效地启动驱动器,读入操作系统引导记录,然后将系统控制权交给引导记录,并由引导记录来完成系统的顺利启动。
CMOS是什么?
CMOS(本意是指互补金属氧化物半导体存储嚣,是一种大规模应用于集成电路芯片制造的原料)是微机主板上的一块可读写的RAM芯片,主要用来保存当前系统的硬件配置和操作人员对某些参数的设定。CMOS RAM芯片由系统通过一块后备电池供电,因此无论是在关机状态中,还是遇到系统掉电情况,CMOS信息都不会丢失。
由于CMOS RAM芯片本身只是一块存储器,只具有保存数据的功能,所以对CMOS中各项参数的设定要通过专门的程序。早期的CMOS设置程序驻留在软盘上的(如IBM的PC/AT机型),使用很不方便。现在多数厂家将CMOS设置程序做到了 BIOS芯片中,在开机时通过按下某个特定键就可进入CMOS设置程序而非常方便地对系统进行设置,因此这种CMOS设置又通常被叫做BIOS设置。
BIOS设置和CMOS设置的区别与联系
BIOS是主板上的一块EPROM或EEPROM芯片,里面装有系统的重要信息和设置系统参数的设置程序(BIOS Setup程序);CMOS是主板上的一块可读写的RAM 芯片,里面装的是关于系统配置的具体参数,其内容可通过设置程序进行读写。CMOS RAM 芯片靠后备电池供电,即使系统掉电后信息也不会丢失。BIOS与CMOS既相关又不同:BIOS中的系统设置程序是完成CMOS参数设置的手段;CMOS RAM既是BIOS设定系统参数的存放场所,又是 BIOS设定系统参数的结果。因此,完整的说法应该是"通过BIOS设置程序对CMOS参数进行设置"。由于 BIOS和CMOS都跟系统设置密初相关,所以在实际使用过程中造成了BIOS设置和CMOS设置的说法,其实指的都是同一回事,但BIOS与CMOS却是两个完全不同的概念,千万不可搞混淆。
何时要对BIOS或CMOS进行设置?
众所周知,进行BIOS或CMOS设置是由操作人员根据微机实际情况而人工完成的一项十分重要的系统初始化工作。在以下情况下,必须进行BIOS或CMOS进行设置:
1、新购微机
即使带PnP功能的系统也只能识别一部分微机外围设备,而对软硬盘参数、当前日期、时钟等基本资料等必须由操作人员进行设置,因此新购买的微机必须通过进行CMOS参数设置来告诉系统整个微机的基本配置情况。
2.新增设备
由于系统不一定能认识新增的设备,所以必须通过CMOS设置来告诉它。另外,一旦新增设备与原有设备之间发生了IRQ、DMA冲突,也往往需要通过BIOS设置来进行排除。
3.CMOS数据意外丢失
在系统后备电池失效、病毒破坏了 CMOS数据程序、意外清除了CMOS参数等情况下,常常会造成CMOS数据意外丢失。此时只能重新进入BIOS设置程序完成新的CMOS参数设置。
4.系统优化
对于内存读写等待时间、硬盘数据传输模式、内/外 Cache的使用、节能保护、电源管理、开机启动顺序等参数, BIOS中预定的设置对系统而言并不一定就是最优的,此时往往需要经过多次试验才能找到系统优化的最佳组合。
9、清除CMOS密码
打开机箱,找到主板上的电池,将其与主板的连接断开(就是取下电池喽),此时CMOS将因断电而失去内部储存的一切信息。再将电池接通,合上机箱开机,由于CMOS已是一片空白,它将不再要求你输入密码,此时进入BIOS设置程序,选择主菜单中的"LOAD BIOS DEFAULT"(装入BIOS缺省值)或"LOAD SETUP DEFAULT"(装入设置程序缺省值)即可,前者以最安全的方式启动计算机,后者能使你的计算机发挥出较高的性能。
妙用DEBUG清除CMOS密码
如果你忘记了进入CMOS设置程序的密码,除了可以在主板上使用跳线短接清除的方法外,还可以使用软件清除的方法,下面就来介绍如何在DOS下清除CMOS密码的方法。
在DOS中提供了一个编辑器,就是DEBUG,这是一个非常实用的工具,启动方法是,在DOS命令提示符状态下输入命令:DEBUG、此时即可进入DEBUG编辑界面。
在命令符状态下输入命令后,重新启动电脑即可清除CMOS密码,下面给出五个清除CMOS密码的命令行。
方法一
-o 70 16
-o 71 16
-q
方法二
-o 70 11
-o 71 ff
-q
方法三
-o 70 10
-o 71 10
-q
方法四
-o 70 23
-o 71 34
-q
方法五
-o 70 10
-o 71 ff
-q
方法六
-o 70 90
-o 71 91
-q
10、在DOS下安装Win XP
在Win 98的DOS状态下可以安装Win XP,插入Win XP光盘后,首先从开始中进入MS-DOS,然后在MS-DOS下输入“G:\Setup.exe”(G为光驱盘符)即可。
如果想从纯DOS下进行安装,可用启动盘启动到DOS状态,安装时首先加载Smartdrv.exe(将Win 98安装光盘或Win 98系统的Windows目录中的Smartdrv.exe拷贝到启动盘上,在DOS提示符下执行Smartdrv.exe即可加载),然后运行/i386目录下的winnt.exe即可。
11、在DOS中使用系统还原工具
在系统上电自检声响后,Windows欢迎屏幕出现之前按下F8键,接着在菜单中选择Safe Mode with Command Prompt,然后使用管理员身份登录,在命令行提示符后输入:%systemroot%\ system32\restore\rstrui.exe,回车后跟随屏幕上的向导将系统恢复到以前的正常状态。
12、Explorer.exe程序在系统中的作用
凡是Windows系列的操作系统,运行时都会启动一个名为Explorer.exe的进程。这个进程主要负责显示系统桌面上的图标以及任务栏,它在不同的系统中有不同的妙用。
Windows 9x中的应用
在Windows 9x中,这个进程是运行系统时所必需的。如果用“结束任务”的方法来结束Explorer.exe进程,系统就会刷新桌面,并更新注册表。所以,我们也可以利用此方法来快速更新注册表。方法如下:
按下Ctrl+Alt+Del组合键,出现“结束任务”对话框。在该对话框中选择“Explorer”选项,然后单击“结束任务”按钮,将出现“关闭Windows”对话框。单击“否”按钮,系统过一会儿将出现另一个对话框,告诉你该程序没有响应,询问是否结束任务。单击“结束任务”按钮,则更新注册表并返回Windows 9x系统环境中。这比起烦琐的重新启动过程要方便多了?
Windows 2000/XP中的应用
在Windows 2000/XP和其他Windows NT内核的系统中,Explorer.exe进程并不是系统运行时所必需的,所以可以用任务管理器来结束它,并不影响系统的正常工作。打开你需要运行的程序,如记事本。然后右击任务栏,选择“任务管理器”,选中“进程”选项卡,在窗口中选择Explorer.exe进程,单击“结束进程”按钮,,接下来桌面上除了壁纸(活动桌面Active Desktop的壁纸除外),所有图标和任务栏都消失了。此时你仍可以像平常一样操作一切软件。
如果你想运行其他软件,但此时桌面上空无一物,怎么办?别着急,下面有两种可以巧妙地打开其他软件:
第一种方法:按下Ctrl+Alt+Del组合键,出现“Windows安全”对话框,单击“任务管理器”按钮(或是直接按下Ctrl+Shift+Esc组合键),在任务管理器窗口中选中“应用程序”选项卡,单击“新任务”,在弹出的“创建新任务”的对话框中,输入你想要打开的软件的路径和名称即可。
你还可以在正在运行的软件上,选择“文件→打开”,在“打开”对话框中,点击“文件类型”下拉列表,选择“所有文件”,再浏览到你想打开的软件,右击它,在快捷菜单中选择“打开”命令,就可以启动你需要的软件了。注意,此时不能够通过单击“打开”按钮来打开软件,此种方法适用于大多数软件,Office系列除外。
通过结束Explorer.exe进程,还可以减少4520KB左右的系统已使用内存,无疑会加快系统的运行速度,为资源紧张的用户腾出了宝贵的空间。
提示:重新启动Explorer.exe进程后,有些软件在任务栏系统托盘的小图标会消息,但该软件还是在正常运行当中。如果觉得有些不方便,可以再次打开该软件来显示小图标。
13、folder.htt等文件的问题
Q12.2:最近在我的电脑的所有文件夹中出现了这样两个文件esktop.ini、folder.htt,怎么也删不去。有人说是病毒,把系统和别的分区全格式化了就好了。可是我的东西全都有用,不能格式化的,请问怎么办?
A:你的电脑可能是感染了VBS.KJ脚本病毒。该病毒采用VBScript语言编写,在互联网上通过电子邮件进行传播,也可以通过文件感染;感染后的机器系统资源被大量消耗,速度变慢;利用Windows系统的“资源管理器”进行寄生与感染。在每个检查到的文件夹下生成desktop.ini和folder.htt文件(隐藏属性)。并且,该病毒还会修改注册表的许多键值。手工删除比较困难,建议采用杀毒软件杀毒,这样可以避免格式化你的硬盘,保护你的数据。金山公司反病毒应急处理中心的《新欢乐时光》专杀工具效果比较好,并提供免费下载,下载链接
ftp://www.iduba.net/download/othertools/scanvbskj.exe大小仅56KB!
14、found.000文件夹的问题
问:我的电脑有的时候在C盘或D盘的根目录下有个名为found.000的文件夹,里面有一些后缀名为CHK的文件。在c:\windows下有很多以fff开头的怪文件,而且大小全部为0字节。请问这些是什么文件?能否将它们删除?
答:found.000文件夹里面的一些后缀名为CHK的文件是你在使用“磁盘碎片整理程序”整理硬盘后所产生的“丢失簇的恢复文件”。在c:\windows下有很多以fff开头的文件是由Mdm.exe(Machine Debug Manager)这个程序产生的。Mdm.exe的主要工作是针对应用软件进行排错(Debug),在排错过程中会产生一些暂存文件,这些文件在操作系统进行关机时没有自动被清除,所以这些fff开头的怪文件和found.000文件夹里面的一些后缀名为CHK的文件都是没有用的垃圾文件,可以任意删除而不会对系统产生不良影响。
但只要系统中有Mdm.exe存在,那么以fff开头的怪文件就又有可能产生。你可以按下面的方法让系统停止运行Mdm.exe来彻底删除以fff开头的怪文件:首先按“Ctrl+Alt+Del”组合键,在弹出的“关闭程序”窗口中选中“Mdm”,按“结束任务”按钮来停止Mdm.exe在后台的运行,接着把Mdm.exe(在C:\Windows\System目录下)改名为Mdm.bak。运行msconfig程序,在启动页中取消对“Machine Debug Manager”的选择。这样可以不让Mdm.exe自启动,然后点击“确定”按钮,结束msconfig程序,并重新启动电脑。另外,如果你使用IE 5.X,建议禁用脚本调用(点击“工具→Internet选项→高级→禁用脚本调用”),这样就可以避免以fff开头的怪文件再次产生。
15、让IE以最大化显示
问:我使用的操作系统是Windows 2000,上网一段时间后,突然发觉IE无法以最大化显示,把IE重装一遍后,也无法解决这个问题,请问我该怎么办?
答:在“运行”中输入regedit打开注册表编辑器,选择“HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main\”,在右边的窗口中删除“Window_Placement”键,在 “HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Desktop\Old Work-Areas”右边窗口中删除“OldWorkAreaRects”键。关闭注册表编辑器,重新启动计算机,连续两次最大化IE窗口(即“最大化→还原→最大化”),再次重新启动IE就可以了。
16、Mfm1992文件问题
问:我的桌面上出现了一个名为Mfm1992的视窗图案的图标,路径是C:\Windows\Desktop,占用45056字节,请问它是什么文件?
答:“Mfm1992”是中文输入法“智能ABC”的记录文件。你的电脑中出现“Mfm1992”文件是由于你使用了“智能ABC”输入法作为中文录入的方式,这也应该算是“智能ABC”输入法的一个Bug,该文件可以随时删除而不会影响系统,不必担心。
17、Regsvr32 用法和错误消息的说明
对于那些可以自行注册的对象链接和嵌入 (OLE) 控件,例如动态链接库 (DLL) 文件或 ActiveX 控件 (OCX) 文件,您可以使用 Regsvr32 工具 (Regsvr32.exe) 来将它们注册和取消注册。
Regsvr32.exe 的用法
RegSvr32.exe 具有以下命令行选项: Regsvr32 [/n] [/i[:cmdline]] dllname
/u - Unregister server<BR/>
/i - Call DllInstall passing it an optional [cmdline];
when used with /u calls dll uninstall
/n - do not call DllRegisterServer; this option must
be used with /i
当您使用 Regsvr32.exe 时,它会尝试加载该组件并调用它的 DLLSelfRegister 函数。如果此尝试成功,Regsvr32.exe 会显示一个指示成功的对话框。如果此尝试失败,Regsvr32.exe 会返回一条错误消息,其中可能会包括一个 Win32 错误代码。要查看 Win32 错误代码的列表,请参见下面的 Microsoft Web 站点:
http://msdn.microsoft.com/librar ... n32_error_codes.asp
例如,要手动注册 Sample.ocx ActiveX 控件,请在 MS-DOS 提示符处键入以下命令:
c:\regsvr32.exe sample.ocx
Regsvr32.exe 错误消息
以下列表介绍了 RegSvr32 错误消息和可能的原因。
Unrecognized flag:/invalid_flag
键入的标志或开关组合无效(请参阅本文中的“Regsvr32.exe 的用法”一节)。
No DLL name specified.
未包括 .dll 文件名(请参阅本文中的“Regsvr32.exe 的用法”一节)。
Dllname was loaded, but the DllRegisterServer or DllUnregisterServer entry point was not found.
Dllname 不是 .dll 或 .ocx 文件。例如,键入 regsvr32 wjview.exe 就会生成该错误消息。
Dllname is not an executable file and no registration helper is registered for this file type.
Dllname 不是可执行文件(.exe、.dll 或 .ocx)。例如,键入 regsvr32 autoexec.bat 就会生成该错误消息。
Dllname was loaded, but the DllRegisterServer or DllUnregisterServer entry point was not found.
Dllname 可能未导出,或者内存中可能有损坏的 Dllname 版本。请考虑使用 Pview 来检测该文件并删除它。
Dllname is not self-registerable or a corrupted version is in memory.
例如,键入 regsvr32 icwdial.dll 后就会返回该错误消息,因为 Icwdial.dll 文件不能自行注册。如果您怀疑内存中有损坏的 Dllname 版本,请尝试重新启动计算机,或重新提取该文件的原始版本。如果您运行的是 Windows NT,可能需要使用 Microsoft Windows NT Server 4.0 资源工具包 中的 Kill 或 Pview 工具。有关其他信息,请单击以查看以下 Microsoft 知识库文章:
197155 如何终止孤立进程
OleInitialize failed (or OleUninitialize failed).
Regsvr32 必须先初始化 COM 库,然后才能调用所需的 COM 库函数并在关闭时撤消对该库的初始化。如果对 COM 库进行初始化或撤消初始化的尝试失败,就会出现这些错误消息。例如,Ole32.dll 文件可能已经损坏,或者其版本有误。
LoadLibrary("Dllname") failed.GetlastError returns 0x00000485
在 Winerror.h 中,0x00000485 = 1157 (ERROR_DLL_NOT_FOUND),表示“找不到运行该应用程序所需的某个库文件”。例如,键入 regsvr32 missing.dll 后,如果找不到 Missing.dll 文件,就会返回该错误消息。
LoadLibrary("Dllname") failed.GetLastError returns 0x00000002
在 Winerror.h 中,0x00000002 = 2 (ERROR_FILE_NOT_FOUND),表示“系统找不到指定的文件”。换言之,系统找不到相关的 DLL。例如,如果键入 regsvr32 icwdial.dll,而此时缺少 Tapi32.dll(依赖项),就会返回该错误消息。
LoadLibrary("dskmaint.dll") failed.GetLastError returns 0x000001f
在 Winerror.h 中,0x000001f = 31 (ERROR_GEN_FAILURE),表示“附加到系统上的设备不能正常工作”。如果您尝试注册 Win16 .dll 文件,就会发生此现象。例如,键入 regsvr32 dskmaint.dll 会返回该错误消息。
DllRegisterServer (or DllUnregisterServer)in Dllname failed.返回代码是:字符串
在 Winerror.h 中搜索字符串。
Regsvr32.exe 和依赖项
RegSvr32.exe 依赖于 Kernel32.dll、User32.dll 和 Ole32.dll 文件(在 Windows NT 中,还依赖于 Msvcrt.dll 和 Advapi32.dll 文件)。Regsvr32.exe 会加载您尝试注册或撤消注册的文件及其所有依赖项。如果缺少必需的文件或者它们已损坏,该进程可能会失败。
您可以使用 Depends.exe 来确定您尝试注册或撤消注册的文件的依赖项。在 Microsoft Windows 98 资源工具包 和 Microsoft Windows NT 4.0 资源工具包 支持工具中都提供了 Depends.exe。
247024 Tools Included with the Microsoft Windows 98 Resource Kit
18、Regsvr32使用方法
使用过activex的人都知道,activex不注册是不能够被系统识别和使用的,一般安装程序都会自动地把它所使用的activex控件注册,但如果你拿到的一个控件需要手动注册怎么办呢?如果修改注册表那就太麻烦了,在windows的system文件夹下有一个regsvr32.exe的程序,它就是windows自带的activex注册和反注册工具。它的用法为:
“regsvr32 [/s] [/n] [/i(:cmdline)] dllname”。其中dllname为activex控件文件名,建议在安装前拷贝到system文件夹下。
参数有如下意义:
/u——反注册控件
/s——不管注册成功与否,均不显示提示框
/c——控制台输出
/i——跳过控件的选项进行安装(与注册不同)
/n——不注册控件,此选项必须与/i选项一起使用
19、Regsvr32命令修复系统故障
Regsvr32命令是 Windows 系统提供的一个实用工具,它用来向系统注册控件或者卸载控件,利用该命令,可找回系统丢失的功能。Regsvr32命令以命令行方式运行,其命令格式为: Regsvr32 Filename, Filename是控件文件名,不带参数 u 就是注册控件,带参数 u 就是卸载控件。
l. 恢复图片预览功能: Windows XP的图片预览功能,对应的控件文件为 thurnbvw.dll。 如果该功能损坏,可单击“开始”一“运行” , 在“打开”框中输人:" Regsvr32 Thurnbvw. dll" ,单击“确定”执行命令,这时就会弹出提示框: " DllRegisterServer in Thumbvw.dll succeeded." ,这表明控件注册成功。重新启动电脑,WindowsXP 的图片预览功能便恢复了。
2. 恢复ZIP功能:Windows XP 系统提供了ZIP功能,虽然功能不算强大,但不需要第三方软件就可打开ZIP文件,而且可以把ZIP压缩文件当作文件夹使用,也算是比较方便、实用的功能。如果该功能损坏,可在运行框中执行“Regsvr32 ZIPfldr.dll”命令,然后重新启动电脑即可恢复。
3. 恢复IE新窗口打开超级链接功能:在IE中有两种超级链接,一种是在当前页面跳转的链接,另一种是弹出新窗口的链接,对第一种链接也可按住Shift键在新窗口中打开。很多人都遇到过不能在新窗口打开链接的麻烦事儿,这个问题也是因控件注册信息丢失引起的。解决办法是:在运行框中分别执行三个命令:“Regsvr32 Actxprxy.dll ”、“Regsvr32 Shdocvw.dll”、 " Regsvr32 Oleaut32.dll ”。一这三个控件注册成功后,重新启动电脑, IE 就恢复正常了。
4. 恢复FSO功能:现在有很多人利用自己的电脑建论坛、网站,论坛或者动态网站程序都可进行在线文件管理,管理员通过页面就可操作文件,但经常有人反映自己的论坛、网站不能在线管理文件,这是因为服务器的FSO功能没有开通或者出现故障,解决办法是:在服务器的运行框中执行“Regsvr32 Sorrun.dll " ,最后重启服务器即可开通/恢复FSO功能。
5. 恢复在线升级功能:在Windows的“开始”菜单的顶端,有一个“Windows Update”项,可以快捷的对系统进行在线升级打补。但有时会发现无法进行在线升级,要解决这个故障,只要在运行框中执行 " Regsvr32 Wupdinfo.dll " ,重启电脑即可解决。
20、RUNDLL32.EXE 是什么程序
Rundll32.exe是什么?顾名思意,“执行32位的DLL文件”。它的作用是执行DLL文件中的内部函数,这样在进程当中,只会有Rundll32.exe,而不会有DLL后门的进程,这样,就实现了进程上的隐藏。如果看到系统中有多个Rundll32.exe,不必惊慌,这证明用Rundll32.exe启动了多少个的DLL文件。当然,这些Rundll32.exe执行的DLL文件是什么,我们都可以从系统自动加载的地方找到。
现在,我来介绍一下Rundll32.exe这个文件,意思上边已经说过,功能就是以命令行的方式调用动态链接程序库。系统中还有一个Rundll.exe文件,他的意思是“执行16位的DLL文件”,这里要注意一下。在来看看Rundll32.exe使用的函数原型:
Void CALLBACK FunctionName (
HWND hwnd,
HINSTANCE hinst,
LPTSTR lpCmdLine,
Int nCmdShow
);
其命令行下的使用方法为:Rundll32.exe DLLname,Functionname [Arguments]
DLLname为需要执行的DLL文件名;Functionname为前边需要执行的DLL文件的具体引出函数;[Arguments]为引出函数的具体参数。
略谈Rundll32.exe的作用 (我是菜鸟)
常用Windows9x的朋友一定对Rundll32.exe和Rundll.exe这两个档案不会陌生吧,不过,由於这两个程式的功能原先只限於在微软内部使用,因而真正知道如何使用它们的朋友想必不多。那么好,如果你还不清楚的话,那么就让我来告诉你吧。
首先,请你做个小实验(请事先保存好你正在执行的程式的结果,否则...):点击“开始-程式-Ms-Dos方式”,进入Dos视窗,然後键入rundll32.exe user.exe,restartwindows,再按下回车键,这时你将看到,机器被重启了!怎么样,是不是很有趣?
当然,Rundll的功能绝不仅仅是重启你的机器。其实,Rundll者,顾名思义,执行Dll也,它的功能就是以命令列的方式呼叫Windows的动态链结库,Rundll32.exe与Rundll.exe的区别就在於前者是呼叫32位的链结库,而後者是运用於16位的链结库,它们的命令格式是:
RUNDLL.EXE ,,
这里要注意三点:1.Dll档案名中不能含有空格,比如该档案位於c:\ProgramFiles\目录,你要把这个路径改成c:\Progra~1\;2.Dll档案名与Dll入口点间的逗号不能少,否则程式将出错并且不会给出任何资讯!3.这是最重要的一点:Rundll不能用来呼叫含返回值参数的Dll,例如Win32API中的GetUserName(),GetTextFace()等。在Visual Basic中,提供了一条执行外部程式的指令Shell,格式为:
Shell “命令列”
如果能配合Rundll32.exe用好Shell指令,会使您的VB程式拥有用其他方法难以甚至无法实现的效果:仍以重启为例,传统的方法需要你在VB工程中先建立一个模组,然後写入WinAPI的声明,最後才能在程式中呼叫。而现在只需一句:
Shell “rundll32.exe user.exe,restartwindows”就搞定了!是不是方便多了?
实际上,Rundll32.exe在呼叫各种Windows控制面板和系统选项方面有著独特的优势。下面,我就将本人在因特网上收集的有关Rundll的指令列举如下(很有用的,能省去你很多呼叫Windows API的时间!!),供大家在程式设计中引用:
命令列: rundll32.exe shell32.dll,Control_RunDLL
功能: 显示控制面板
命令列: rundll32.exe shell32.dll,Control_RunDLL access.cpl,,1
功能: 显示“控制面板-辅助选项-键盘”选项视窗
命令列: rundll32.exe shell32.dll,Control_RunDLL access.cpl,,2
功能: 显示“控制面板-辅助选项-声音”选项视窗
命令列: rundll32.exe shell32.dll,Control_RunDLL access.cpl,,3
功能: 显示“控制面板-辅助选项-显示”选项视窗
命令列: rundll32.exe shell32.dll,Control_RunDLL access.cpl,,4
功能: 显示“控制面板-辅助选项-滑鼠”选项视窗
命令列: rundll32.exe shell32.dll,Control_RunDLL access.cpl,,5
功能: 显示“控制面板-辅助选项-传统”选项视窗
命令列: rundll32.exe shell32.dll,Control_RunDLL sysdm.cpl @1
功能: 执行“控制面板-添加新硬体”向导。
命令列: rundll32.exe shell32.dll,SHHelpShortcuts_RunDLL AddPrinter
功能: 执行“控制面板-添加新印表机”向导。
命令列: rundll32.exe shell32.dll,Control_RunDLL appwiz.cpl,,1
功能: 显示 “控制面板-添加/删除程式-安装/卸载” 面板。
命令列: rundll32.exe shell32.dll,Control_RunDLL appwiz.cpl,,2
功能: 显示 “控制面板-添加/删除程式-安装Windows” 面板。
命令列: rundll32.exe shell32.dll,Control_RunDLL appwiz.cpl,,3
功能: 显示 “控制面板-添加/删除程式-启动盘” 面板。
命令列: rundll32.exe syncui.dll,Briefcase_Create
功能: 在桌面上建立一个新的“我的公文包”。
命令列: rundll32.exe diskcopy.dll,DiskCopyRunDll
功能: 显示复制软碟视窗
命令列: rundll32.exe apwiz.cpl,NewLinkHere %1
功能: 显示“建立快捷方式”的对话框,所建立的快捷方式的位置由%1参数决定。
命令列: rundll32.exe shell32.dll,Control_RunDLL timedate.cpl,,0
功能: 显示“日期与时间”选项视窗。
命令列: rundll32.exe shell32.dll,Control_RunDLL timedate.cpl,,1
功能: 显示“时区”选项视窗。
命令列: rundll32.exe rnaui.dll,RnaDial [某个拨号连接的名称]
功能: 显示某个拨号连接的拨号视窗。如果已经拨号连接,则显示目前的连接状态的视窗。
命令列: rundll32.exe rnaui.dll,RnaWizard
功能: 显示“新建拨号连接”向导的视窗。
命令列: rundll32.exe shell32.dll,Control_RunDLL desk.cpl,,0
功能: 显示“显示属性-背景”选项视窗。
命令列: rundll32.exe shell32.dll,Control_RunDLL desk.cpl,,1
功能: 显示“显示属性-萤屏保护”选项视窗。
命令列: rundll32.exe shell32.dll,Control_RunDLL desk.cpl,,2
功能: 显示“显示属性-外观”选项视窗。
命令列: rundll32.exe shell32.dll,Control_RunDLL desk.cpl,,3
功能: 显示显示“显示属性-属性”选项视窗。
命令列: rundll32.exe shell32.dll,SHHelpShortcuts_RunDLL FontsFolder
功能: 显示Windows的“字体”档案夹。
命令列: rundll32.exe shell32.dll,Control_RunDLL main.cpl @3
功能: 同样是显示Windows的“字体”档案夹。
命令列: rundll32.exe shell32.dll,SHformatDrive
功能: 显示格式化软碟对话框。
命令列: rundll32.exe shell32.dll,Control_RunDLL joy.cpl,,0
功能: 显示“控制面板-游戏控制器-一般”选项视窗。
命令列: rundll32.exe shell32.dll,Control_RunDLL joy.cpl,,1
功能: 显示“控制面板-游戏控制器-进阶”选项视窗。
命令列: rundll32.exe mshtml.dll,PrintHTML (HTML文档)
功能: 列印HTML文档。
命令列: rundll32.exe shell32.dll,Control_RunDLL mlcfg32.cpl
功能: 显示Microsoft Exchange一般选项视窗。
命令列: rundll32.exe shell32.dll,Control_RunDLL main.cpl @0
功能: 显示“控制面板-滑鼠” 选项 。
命令列: rundll32.exe shell32.dll,Control_RunDLL main.cpl @1
功能: 显示 “控制面板-键盘属性-速度”选项视窗。
命令列: rundll32.exe shell32.dll,Control_RunDLL main.cpl @1,,1
功能: 显示 “控制面板-键盘属性-语言”选项视窗。
命令列: rundll32.exe shell32.dll,Control_RunDLL main.cpl @2
功能: 显示Windows“印表机”档案夹。
命令列: rundll32.exe shell32.dll,Control_RunDLL main.cpl @3
功能: 显示Windows“字体”档案夹。
命令列: rundll32.exe shell32.dll,Control_RunDLL main.cpl @4
功能: 显示“控制面板-输入法属性-输入法”选项视窗。
命令列: rundll32.exe shell32.dll,Control_RunDLL modem.cpl,,add
功能: 执行“添加新调制解调器”向导。
命令列: rundll32.exe shell32.dll,Control_RunDLL mmsys.cpl,,0
功能: 显示“控制面板-多媒体属性-音频”属性页。
命令列: rundll32.exe shell32.dll,Control_RunDLL mmsys.cpl,,1
功能: 显示“控制面板-多媒体属性-视频”属性页。
命令列: rundll32.exe shell32.dll,Control_RunDLL mmsys.cpl,,2
功能: 显示“控制面板-多媒体属性-MIDI”属性页。
命令列: rundll32.exe shell32.dll,Control_RunDLL mmsys.cpl,,3
功能: 显示“控制面板-多媒体属性-CD音乐”属性页。
命令列: rundll32.exe shell32.dll,Control_RunDLL mmsys.cpl,,4
功能: 显示“控制面板-多媒体属性-设备”属性页。
命令列: rundll32.exe shell32.dll,Control_RunDLL mmsys.cpl @1
功能: 显示“控制面板-声音”选项视窗。
命令列: rundll32.exe shell32.dll,Control_RunDLL netcpl.cpl
功能: 显示“控制面板-网路”选项视窗。
命令列: rundll32.exe shell32.dll,Control_RunDLL odbccp32.cpl
功能: 显示ODBC32资料管理选项视窗。
命令列: rundll32.exe shell32.dll,OpenAs_RunDLL {drive:\path\filename}
功能: 显示指定档案(drive:\path\filename)的“打开方式”对话框。
命令列: rundll32.exe shell32.dll,Control_RunDLL password.cpl
功能: 显示“控制面板-密码”选项视窗。
命令列: rundll32.exe shell32.dll,Control_RunDLL powercfg.cpl
功能: 显示“控制面板-电源管理属性”选项视窗。
命令列: rundll32.exe shell32.dll,SHHelpShortcuts_RunDLL PrintersFolder
功能: 显示Windows“印表机”档案夹。(同rundll32.exe shell32.dll,Control_RunDLL main.cpl @2)
命令列: rundll32.exe shell32.dll,Control_RunDLL intl.cpl,,0
功能: 显示“控制面板-区域设置属性-区域设置”选项视窗。
命令列: rundll32.exe shell32.dll,Control_RunDLL intl.cpl,,1
功能: 显示“控制面板-区域设置属性-数字”选项视窗。
命令列: rundll32.exe shell32.dll,Control_RunDLL intl.cpl,,2
功能: 显示“控制面板-区域设置属性-货币”选项视窗。
命令列: rundll32.exe shell32.dll,Control_RunDLL intl.cpl,,3
功能: 显示“控制面板-区域设置属性-时间”选项视窗。
命令列: rundll32.exe shell32.dll,Control_RunDLL intl.cpl,,4
功能: 显示“控制面板-区域设置属性-日期”选项视窗。
命令列: rundll32.exe desk.cpl,InstallScreenSaver [萤屏保护档案名]
功能: 将指定的萤屏保护档案设置为Windows的屏保,并显示萤屏保护属性视窗。
命令列: rundll32.exe shell32.dll,Control_RunDLL sysdm.cpl,,0
功能: 显示“控制面板-系统属性-传统”属性视窗。
命令列: rundll32.exe shell32.dll,Control_RunDLL sysdm.cpl,,1
功能: 显示“控制面板-系统属性-设备管理器”属性视窗。
命令列: rundll32.exe shell32.dll,Control_RunDLL sysdm.cpl,,2
功能: 显示“控制面板-系统属性-硬体配置档案”属性视窗。
命令列: rundll32.exe shell32.dll,Control_RunDLL sysdm.cpl,,3
功能: 显示“控制面板-系统属性-性能”属性视窗。
命令列: rundll32.exe user.exe,restartwindows
功能: 强行关闭所有程式并重启机器。
命令列: rundll32.exe user.exe,exitwindows
功能: 强行关闭所有程式并关机。
命令列: rundll32.exe shell32.dll,Control_RunDLL telephon.cpl
功能: 显示“拨号属性”选项视窗
命令列: rundll32.exe shell32.dll,Control_RunDLL themes.cpl
功能: 显示“桌面主旨”选项面板
当然,不止是VisualBasic,象Delphi.VisualC++等其他程式设计语言也可以通过呼叫外部命令的方法来使用Rundll的这些功能,具体方法这里就不再详细叙述了。灵活的使用Rundll,一定会使你的程式设计轻轻松松,达到事半功倍的效果!
21、SFC使用方法
SFC(System Files Checker,系统文件检查器)。以管理员身份登录Windows XP,将Windows XP的安装光盘放入光驱,在“命令提示符”窗口中键入“SFC/SCANNOW”命令后回车,“系统文件检查器”开始自动扫描系统文件,而且不需要你的任何干预。不过需要提醒大家的是,尽管Windows 2000/XP下的“SFC”比Windows 98下的“SFC”聪明得多,但要想正常运行它,还得注意以下两个问题:
1.在运行“SFC”之前必须将Windows XP安装光盘放入光驱,否则在扫描过程中会提示你插入安装光盘。即使你插入了安装光盘,系统仍会有出错提示。