RunDll32.exe – The key to windows treasure chest.

24 03 2008

Icon Description
While digging the C:\Windows directory, a windows enthusiast surely will encounter the application RunDll32.exe. If executed it seems to do nothing. But its a key to great windows treasures. Still don’t believe me ? okay run the following command in your command prompt.
RUNDLL32.exe user32.dll, LockWorkStation

icon_underthehood.jpg
Actually speaking, RunDll32.exe is just a program which executes the specified funciton of the specified dll, passed via command line arguments. Please see the syntax as follows.
RUNDLL32.EXE dll_name, EntryPoint <Optional Arguments>

The only requirement is that the callable function’s prototype should be as follows.
void CALLBACK EntryPoint(HWND hwnd, HINSTANCE hinst, LPSTR lpszCmdLine, int nCmdShow);

Window had implemented lot of functinalities inside which can be callable via RunDll32.exe. See some e.g. below.

RunDll32.exe shell32.dll,Control_RunDLL sysdm.cpl,,3 Shows the System Properties, Advanced tab.
RunDll32.exe shell32.dll,Control_RunDLL hdwwiz.cplInvokes Add new hardware wizard

Please refer http://www.dx21.com/SCRIPTING/RUNDLL32/REFGUIDE.ASP for huge list of features that can be accessed via RunDll32.

Usages:

1) You can create a shortcut for RunDll32.exe shell32.dll,Control_RunDLL sysdm.cpl,,3 by which we can easly take the environment variables tab.
2) You can write some test functions in your dll and we can call it anytime anywhere without exe file.

The usages are many, only limitation is our imagination… 😉

Advertisements