|
Rundll32.exe是什么?顧名思意,“執(zhí)行32位的DLL文件”。它的作用是執(zhí)行DLL文件中的內(nèi)部函數(shù),這樣在進(jìn)程當(dāng)中,只會有Rundll32.exe,而不會有DLL后門的進(jìn)程,這樣,就實現(xiàn)了進(jìn)程上的隱藏。如果看到系統(tǒng)中有多個Rundll32.exe,不必驚慌,這證明用Rundll32.exe啟動了多少個的DLL文件。當(dāng)然,這些Rundll32.exe執(zhí)行的DLL文件是什么,我們都可以從系統(tǒng)自動加載的地方找到。 現(xiàn)在,我來介紹一下Rundll32.exe這個文件,意思上邊已經(jīng)說過,功能就是以命令行的方式調(diào)用動態(tài)鏈接程序庫。系統(tǒng)中還有一個Rundll.exe文件,他的意思是“執(zhí)行16位的DLL文件”,這里要注意一下。在來看看Rundll32.exe使用的函數(shù)原型: VoidCALLBACKFunctionName( HWNDhwnd, HINSTANCEhinst, LPTSTRlpCmdLine, IntnCmdShow ); 其命令行下的使用方法為:Rundll32.exeDLLname,Functionname[Arguments] DLLname為需要執(zhí)行的DLL文件名;Functionname為前邊需要執(zhí)行的DLL文件的具體引出函數(shù);[Arguments]為引出函數(shù)的具體參數(shù)。 略談Rundll32.exe的作用(我是菜鳥) 常用Windows9x的朋友一定對Rundll32.exe和Rundll.exe這兩個檔案不會陌生吧,不過,由於這兩個程式的功能原先只限於在微軟內(nèi)部使用,因而真正知道如何使用它們的朋友想必不多。那么好,如果你還不清楚的話,那么就讓我來告訴你吧。 首先,請你做個小實驗(請事先保存好你正在執(zhí)行的程式的結(jié)果,否則...):點擊“開始-程式-Ms-Dos方式”,進(jìn)入Dos視窗,然後鍵入rundll32.exeuser.exe,restartwindows,再按下回車鍵,這時你將看到,機(jī)器被重啟了!怎么樣,是不是很有趣? 當(dāng)然,Rundll的功能絕不僅僅是重啟你的機(jī)器。其實,Rundll者,顧名思義,執(zhí)行Dll也,它的功能就是以命令列的方式呼叫Windows的動態(tài)鏈結(jié)庫,Rundll32.exe與Rundll.exe的區(qū)別就在於前者是呼叫32位的鏈結(jié)庫,而後者是運(yùn)用於16位的鏈結(jié)庫,它們的命令格式是: RUNDLL.EXE,, 這里要注意三點:1.Dll檔案名中不能含有空格,比如該檔案位於c:ProgramFiles目錄,你要把這個路徑改成c:Progra~1;2.Dll檔案名與Dll入口點間的逗號不能少,否則程式將出錯并且不會給出任何資訊!3.這是最重要的一點:Rundll不能用來呼叫含返回值參數(shù)的Dll,例如Win32API中的GetUserName(),GetTextFace()等。在VisualBasic中,提供了一條執(zhí)行外部程式的指令Shell,格式為: Shell“命令列” 如果能配合Rundll32.exe用好Shell指令,會使您的VB程式擁有用其他方法難以甚至無法實現(xiàn)的效果:仍以重啟為例,傳統(tǒng)的方法需要你在VB工程中先建立一個模組,然後寫入WinAPI的聲明,最後才能在程式中呼叫。而現(xiàn)在只需一句: Shell“rundll32.exeuser.exe,restartwindows”就搞定了!是不是方便多了? 實際上,Rundll32.exe在呼叫各種Windows控制面板和系統(tǒng)選項方面有著獨特的優(yōu)勢。下面,我就將本人在因特網(wǎng)上收集的有關(guān)Rundll的指令列舉如下(很有用的,能省去你很多呼叫WindowsAPI的時間?。。┐蠹以诔淌皆O(shè)計中引用: 命令列:rundll32.exeshell32.dll,Control_RunDLL 功能:顯示控制面板 命令列:rundll32.exeshell32.dll,Control_RunDLLaccess.cpl,,1 功能:顯示“控制面板-輔助選項-鍵盤”選項視窗 命令列:rundll32.exeshell32.dll,Control_RunDLLaccess.cpl,,2 功能:顯示“控制面板-輔助選項-聲音”選項視窗 命令列:rundll32.exeshell32.dll,Control_RunDLLaccess.cpl,,3 功能:顯示“控制面板-輔助選項-顯示”選項視窗 命令列:rundll32.exeshell32.dll,Control_RunDLLaccess.cpl,,4 功能:顯示“控制面板-輔助選項-滑鼠”選項視窗 命令列:rundll32.exeshell32.dll,Control_RunDLLaccess.cpl,,5 功能:顯示“控制面板-輔助選項-傳統(tǒng)”選項視窗 命令列:rundll32.exeshell32.dll,Control_RunDLLsysdm.cpl@1 功能:執(zhí)行“控制面板-添加新硬體”向?qū)А?/p> 命令列:rundll32.exeshell32.dll,SHHelpShortcuts_RunDLLAddPrinter 功能:執(zhí)行“控制面板-添加新印表機(jī)”向?qū)А?/p> 命令列:rundll32.exeshell32.dll,Control_RunDLLappwiz.cpl,,1 功能:顯示“控制面板-添加/刪除程式-安裝/卸載”面板。 命令列:rundll32.exeshell32.dll,Control_RunDLLappwiz.cpl,,2 功能:顯示“控制面板-添加/刪除程式-安裝Windows”面板。 命令列:rundll32.exeshell32.dll,Control_RunDLLappwiz.cpl,,3 功能:顯示“控制面板-添加/刪除程式-啟動盤”面板。 命令列:rundll32.exesyncui.dll,Briefcase_Create 功能:在桌面上建立一個新的“我的公文包”。 命令列:rundll32.exediskcopy.dll,DiskCopyRunDll 功能:顯示復(fù)制軟碟視窗 命令列:rundll32.exeapwiz.cpl,NewLinkHere%1 功能:顯示“建立快捷方式”的對話框,所建立的快捷方式的位置由%1參數(shù)決定。 命令列:rundll32.exeshell32.dll,Control_RunDLLtimedate.cpl,,0 功能:顯示“日期與時間”選項視窗。 命令列:rundll32.exeshell32.dll,Control_RunDLLtimedate.cpl,,1 功能:顯示“時區(qū)”選項視窗。 命令列:rundll32.exernaui.dll,RnaDial[某個撥號連接的名稱] 功能:顯示某個撥號連接的撥號視窗。如果已經(jīng)撥號連接,則顯示目前的連接狀態(tài)的視窗。 命令列:rundll32.exernaui.dll,RnaWizard 功能:顯示“新建撥號連接”向?qū)У囊暣啊?/p> 命令列:rundll32.exeshell32.dll,Control_RunDLLdesk.cpl,,0 功能:顯示“顯示屬性-背景”選項視窗。 命令列:rundll32.exeshell32.dll,Control_RunDLLdesk.cpl,,1 功能:顯示“顯示屬性-螢屏保護(hù)”選項視窗。 命令列:rundll32.exeshell32.dll,Control_RunDLLdesk.cpl,,2 功能:顯示“顯示屬性-外觀”選項視窗。 命令列:rundll32.exeshell32.dll,Control_RunDLLdesk.cpl,,3 功能:顯示顯示“顯示屬性-屬性”選項視窗。 命令列:rundll32.exeshell32.dll,SHHelpShortcuts_RunDLLFontsFolder 功能:顯示W(wǎng)indows的“字體”檔案夾。 命令列:rundll32.exeshell32.dll,Control_RunDLLmain.cpl@3 功能:同樣是顯示W(wǎng)indows的“字體”檔案夾。 命令列:rundll32.exeshell32.dll,SHformatDrive 功能:顯示格式化軟碟對話框。 命令列:rundll32.exeshell32.dll,Control_RunDLLjoy.cpl,,0 功能:顯示“控制面板-游戲控制器-一般”選項視窗。 命令列:rundll32.exeshell32.dll,Control_RunDLLjoy.cpl,,1 功能:顯示“控制面板-游戲控制器-進(jìn)階”選項視窗。 命令列:rundll32.exemshtml.dll,PrintHTML(HTML文檔) 功能:列印HTML文檔。 命令列:rundll32.exeshell32.dll,Control_RunDLLmlcfg32.cpl 功能:顯示MicrosoftExchange一般選項視窗。 命令列:rundll32.exeshell32.dll,Control_RunDLLmain.cpl@0 功能:顯示“控制面板-滑鼠”選項。 命令列:rundll32.exeshell32.dll,Control_RunDLLmain.cpl@1 功能:顯示“控制面板-鍵盤屬性-速度”選項視窗。 命令列:rundll32.exeshell32.dll,Control_RunDLLmain.cpl@1,,1 功能:顯示“控制面板-鍵盤屬性-語言”選項視窗。 命令列:rundll32.exeshell32.dll,Control_RunDLLmain.cpl@2 功能:顯示W(wǎng)indows“印表機(jī)”檔案夾。 命令列:rundll32.exeshell32.dll,Control_RunDLLmain.cpl@3 功能:顯示W(wǎng)indows“字體”檔案夾。 命令列:rundll32.exeshell32.dll,Control_RunDLLmain.cpl@4 功能:顯示“控制面板-輸入法屬性-輸入法”選項視窗。 命令列:rundll32.exeshell32.dll,Control_RunDLLmodem.cpl,,add 功能:執(zhí)行“添加新調(diào)制解調(diào)器”向?qū)А?/p> 命令列:rundll32.exeshell32.dll,Control_RunDLLmmsys.cpl,,0 功能:顯示“控制面板-多媒體屬性-音頻”屬性頁。 命令列:rundll32.exeshell32.dll,Control_RunDLLmmsys.cpl,,1 功能:顯示“控制面板-多媒體屬性-視頻”屬性頁。 命令列:rundll32.exeshell32.dll,Control_RunDLLmmsys.cpl,,2 功能:顯示“控制面板-多媒體屬性-MIDI”屬性頁。 命令列:rundll32.exeshell32.dll,Control_RunDLLmmsys.cpl,,3 功能:顯示“控制面板-多媒體屬性-CD音樂”屬性頁。 命令列:rundll32.exeshell32.dll,Control_RunDLLmmsys.cpl,,4 功能:顯示“控制面板-多媒體屬性-設(shè)備”屬性頁。 命令列:rundll32.exeshell32.dll,Control_RunDLLmmsys.cpl@1 功能:顯示“控制面板-聲音”選項視窗。 命令列:rundll32.exeshell32.dll,Control_RunDLLnetcpl.cpl 功能:顯示“控制面板-網(wǎng)路”選項視窗。 命令列:rundll32.exeshell32.dll,Control_RunDLLodbccp32.cpl 功能:顯示ODBC32資料管理選項視窗。 命令列:rundll32.exeshell32.dll,OpenAs_RunDLL{drive:pathfilename} 功能:顯示指定檔案(drive:pathfilename)的“打開方式”對話框。 命令列:rundll32.exeshell32.dll,Control_RunDLLpassword.cpl 功能:顯示“控制面板-密碼”選項視窗。 命令列:rundll32.exeshell32.dll,Control_RunDLLpowercfg.cpl 功能:顯示“控制面板-電源管理屬性”選項視窗。 命令列:rundll32.exeshell32.dll,SHHelpShortcuts_RunDLLPrintersFolder 功能:顯示W(wǎng)indows“印表機(jī)”檔案夾。(同rundll32.exeshell32.dll,Control_RunDLLmain.cpl@2) 命令列:rundll32.exeshell32.dll,Control_RunDLLintl.cpl,,0 功能:顯示“控制面板-區(qū)域設(shè)置屬性-區(qū)域設(shè)置”選項視窗。 命令列:rundll32.exeshell32.dll,Control_RunDLLintl.cpl,,1 功能:顯示“控制面板-區(qū)域設(shè)置屬性-數(shù)字”選項視窗。 命令列:rundll32.exeshell32.dll,Control_RunDLLintl.cpl,,2 功能:顯示“控制面板-區(qū)域設(shè)置屬性-貨幣”選項視窗。 命令列:rundll32.exeshell32.dll,Control_RunDLLintl.cpl,,3 功能:顯示“控制面板-區(qū)域設(shè)置屬性-時間”選項視窗。 命令列:rundll32.exeshell32.dll,Control_RunDLLintl.cpl,,4 功能:顯示“控制面板-區(qū)域設(shè)置屬性-日期”選項視窗。 命令列:rundll32.exedesk.cpl,InstallScreenSaver[螢屏保護(hù)檔案名] 功能:將指定的螢屏保護(hù)檔案設(shè)置為Windows的屏保,并顯示螢屏保護(hù)屬性視窗。 命令列:rundll32.exeshell32.dll,Control_RunDLLsysdm.cpl,,0 功能:顯示“控制面板-系統(tǒng)屬性-傳統(tǒng)”屬性視窗。 命令列:rundll32.exeshell32.dll,Control_RunDLLsysdm.cpl,,1 功能:顯示“控制面板-系統(tǒng)屬性-設(shè)備管理器”屬性視窗。 命令列:rundll32.exeshell32.dll,Control_RunDLLsysdm.cpl,,2 功能:顯示“控制面板-系統(tǒng)屬性-硬體配置檔案”屬性視窗。 命令列:rundll32.exeshell32.dll,Control_RunDLLsysdm.cpl,,3 功能:顯示“控制面板-系統(tǒng)屬性-性能”屬性視窗。 命令列:rundll32.exeuser.exe,restartwindows 功能:強(qiáng)行關(guān)閉所有程式并重啟機(jī)器。 命令列:rundll32.exeuser.exe,exitwindows 功能:強(qiáng)行關(guān)閉所有程式并關(guān)機(jī)。 命令列:rundll32.exeshell32.dll,Control_RunDLLtelephon.cpl 功能:顯示“撥號屬性”選項視窗 命令列:rundll32.exeshell32.dll,Control_RunDLLthemes.cpl 功能:顯示“桌面主旨”選項面板 當(dāng)然,不止是VisualBasic,象Delphi.VisualC++等其他程式設(shè)計語言也可以通過呼叫外部命令的方法來使用Rundll的這些功能,具體方法這里就不再詳細(xì)敘述了。靈活的使用Rundll,一定會使你的程式設(shè)計輕輕松松,達(dá)到事半功倍的效果!
信息發(fā)布:廣州名易軟件有限公司 http://www.jetlc.com
|