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

Windows
Windows98优化小技巧
解决开机按F1才能进入系统
制作U盘版迷你Win 98系统
Windows 98 SE 简体中文第二版
Windows 98的DOS实模式下“软关机”技巧!
开机无法进入桌面的问题
win2000服务详解
防止黑客入侵你正在使用的Windows操作系统
FSO在Win2000服务器中的解决方案
Windows 2000进程列表详解
开启 Windows 2000 Server 上的远程桌面功能
NTFS下Win2000口令破解
保证Windows 2000安全八招秘籍
Win 2000磁盘碎片整理
关闭默认共享的最安全 方法
Windows 2000/XP/2003 下 IIS+PHP+MySQL+Zend Optimize安装说明
WinXP/2000/2003下重装TCP/IP协议
windows2000 启动时候load error 3的解决办法
Win2000/XP中多种建立隐藏超级用户的方法
Windows服务器安全设置

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


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

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