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

Windows
Windows Server 2008下高效域管理体验
Windows Server 2008 core管理与配置
Windows PowerShell不一样的系统管理体验
活动目录迁移需要的步骤
给Windows Server 2008设一个简单密码
部署NAP For DHCP 限制非法客户端
Windows Remote Shell(WinRM)使用介绍
微软新品Windows Server 2008 Foundation详情
Windows Server Core 网络的基本配置
Windows Server core的便捷操作和远程管理
Vista和Server08 SP2 RTM-Escrow发放给测试者
slmgr.vbs介绍与VA2.0部署
通过Windows Server终端服务实现远程管理
深入Windows Server 2008的自我监控
群集共享卷文件(CSV)四种模式的区别
Windows Server 2008 R2热添加删除虚拟存诸
部署基于Windows 2008防火墙策略提升域安全
调整服务 解决Windows Server 2008疑难病症
Windows Server 2008 R2的八大优势
Windows Server 2008禁止模块安装提升网络性能

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-01   浏览: 61 ::
收藏到网摘: 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

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