什么是Rundll32.exe?
Rundll32.exe怎么了?如何修復被病毒感染的Rundll32.exe?Rundll32進程是我們經常可以看到的一個進程。這個進程經常被病毒用來“執行32位DLL文件”。其作用是執行DLL文件中的內部函數,使進程中只會有Rundll32.exe,不會有DLL后門進程,從而實現進程隱藏。
如果你看到系統中有多個Rundll32.exe,不要驚慌,這證明了有多少DLL文件是用Rundll32.exe啟動的。當然,Rundll32.exe執行的這些DLL文件是什么,我們可以從系統自動加載的地方找到。讓我們了解一下Rundll32.exe進程和rundll32 . exe錯誤的解決方案。
(資料圖)
Rundll32.exe使用的函數原型:
Void回調函數Name (HWND hwnd,HINSTANCE hinst,LPTSTR lpCmdLine,Int nCmdShow);
命令行下的使用方法是:Rundll32.exe dllname,函數名[arguments]
DLLname是要執行的DLL的文件名;Functionname是前面要執行的DLL文件的具體派生函數;【Arguments】是求導函數的具體參數。
實驗:用rundll32重啟機器點擊“開始-程序-Ms-Dos模式”,進入Dos窗口,然后鍵入rundll32.exeUser.exe,重啟Windows,然后按回車鍵。這時你會看到機器已經重啟了!
RUNDLL。可執行程序的擴展名
這里應該注意三點:
1.Dll文件名不能包含空格。例如,該文件位于c:\ProgramFiles\目錄中。您應該將此路徑更改為C: \ progra ~ 1 \
Dll文件名和Dll入口點之間的逗號不能少,否則程序會出錯并且不會給出任何信息!
3.這是最重要的一點:Rundll不能用來調用帶有返回值參數的dll,比如Win32API中的GetUserName()、GetTextFace()等等。在Visual Basic中,提供了用于執行外部程序的指令外殼,其格式為“外殼命令行”
如果你能很好的利用Shell指令配合Rundll32.exe,你的VB程序將會有其他方法很難甚至不可能達到的效果:仍然以重啟為例,傳統的方法需要你先在VB項目中構建一個模塊,然后編寫WinAPI的聲明,最后在程序中調用。而現在只需要:
shell“rundll32 . exe user.exe,重啟windows”完成了!
實際上,Rundll32.exe在調用各種Windows控制面板和系統選項方面有獨特的優勢。
網絡上有Rundll32.exe的查殺工具可以查殺被感染的Rundll32.exe進程。
本文到此結束,希望對大家有所幫助。