当前位置: 首页 > 图文教程 > 操作系统 > Windows > 系统自带利器Rundll.exe高级应用

Windows
Windows 2008之AD LDS轻型目录服务解析
解析Windows Server 2008服务器管理控制台
在Windows2008下如何通过命令行来管理磁盘
Windows Server 2008疑难杂症
Windows Server 2008 R2新增功能浅析
严密防范Windows Server 2008的安全威胁
微软官方操作系统已经升级
受益无穷 破解Windows Server 2008疑难杂症
IIS7在Windows Server 2008R2的新改进
用Spotlight实时监控Windows Server 2008
Windows Server 2008下共享资源访问走捷径
Windows Server 2008中审核和符合性
Windows Server 2008:手足之争下的赢家
Windows Server 2003环境更改Boot.ini文件
Windows Server 08将内置RSA的DLP
通透Windows 2008系统状态变化
Windows Server 2008域环境下组策略两例应用
提升Windows Server 2008的AD管理效率
Windows Server 2008 SP2即将发布
Windows Server 2008服务器管理器之角色配置

Windows 中的 系统自带利器Rundll.exe高级应用


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-01   浏览: 88 ::
收藏到网摘: n/a

  首先,请你做个小实验(请事先保存好你正在执行的程式的结果)∶

  点击“开始-程式-Ms-Dos方式”,进入Dos视窗,然後键入“rundll32.exe user.exe,restartwindows”,再按下回车键,这时你将看到,机器被重启了!

  当然,Rundll的功能绝不仅仅是重启你的机器。其实,Rundll者,顾名思义,执行Dll也,它的功能就是以命令列的方式呼叫Windows的动态链结库,Rundll32.exe与Rundll.exe的区别就在于前者是呼叫32位的链结库,而后者是运用于16位的链结库,它们的命令格式是∶

  RUNDLL.EXE ,,

  这里要注意三点∶

  1.Dll档案名中不能含有空格,比如该档案位於c:\Program Files目录,你要把这个路径改成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控制面板和系统选项方面有著独特的优势。

  命令列: rundll32.exe shell32.dll,Control_RunDLL

  功能: 显示控制面板

  命令列: rundll32.exe shell32.dll,Control_RunDLL access.cpl,,1

  功能: 显示“控制面板-辅助选项-键盘”选项视窗

  命令列: rundll32.exe shell32.dll,Control_RunDLL access.cpl,,2

  功能: 显示“控制面板-辅助选项-声音”选项视窗