Запуск библиотеки DLL как приложения - Run a DLL as an App
Windows имеет в своем составе утилиту командной строки rundll32.exe, которая позволяет запускать некоторые команды-функции, заложенные в DLL-файлах.
Вообще-то данная утилита была разработана для внутреннего пользования программистами Microsoft. Но богатые возможности этой программы дало повод на всеобщее использование пользователями.
Область применения данной утилиты довольно широк. Вы можете вводить приведенные ниже команды в окне Запуск программы (Пуск-Выполнить), также создать ярлыки с заданнами параметрами запуска, использовать в коде на программируемом вами языке (C++, Delphi, Visual Basic и т.д.)
Список команд слишком обширен. Приведем список наиболее значимых команд.
SHELL32.DLL
rundll32 shell32.dll,Control_RunDLL hotplug.dll - диалоговое окно Отключение или извлечение аппаратного устройства
rundll32 shell32, Control_FillCache_RunDLL - запустить начальную инициализацию Панели управления.
rundll32 shell32,Control_RunDLL - открыть в Проводнике папку "Панель управления"
rundll32.exe shell32.dll,Control_RunDLL access.cpl,,1 - апплет Специальные возможности (вкладка Клавиатура)
rundll32.exe shell32.dll,Control_RunDLL access.cpl,,2 - апплет Специальные возможности (вкладка Звук)
rundll32.exe shell32.dll,Control_RunDLL access.cpl,,3 - апплет Специальные возможности (вкладка Экран)
rundll32.exe shell32.dll,Control_RunDLL access.cpl,,4 - апплет Специальные возможности (вкладка Мышь)
rundll32.exe shell32.dll,Control_RunDLL access.cpl,,5 - апплет Специальные возможности (вкладка Общие)
rundll32 shell32,Control_RunDLL appwiz.cpl,,1 - вызов диалогового окна "Установка и удаление программ"(вкладка Установка программ).
rundll32 shell32,Control_RunDLL appwiz.cpl,,2 - вызов диалогового окна "Установка и удаление программ"(вкладка Установка компонентов Windows).
rundll32 shell32,Control_RunDLL appwiz.cpl,,3 - вызов диалогового окна "Установка и удаление программ"(вкладка Выбор программ по умолчанию).
rundll32.exe shell32.dll,Control_RunDLL desk.cpl,,0 - апплет Экран (вкладка Рабочий стол).
rundll32 url.dll,FileProtocolHandler %1 - открыть веб-страницу, где %1 - URL сайта (включая http://).
rundll32 url.dll,MailToProtocolHandler %1 - создать новое письмо, где %1 - e-mail адресата.
rundll32 url.dll, NewsProtocolHandler %1 - произвести подключение к новостному серверу, где %1 - URL сервера.
rundll32 url.dll, TelnetProtocolHandler %1 - осуществить подключение telnet, где %1 - адрес сервера.
USER.EXE
rundll32 user,CASCADECHILDWINDOWS - расположить все окна каскадом.
rundll32 user,TILECHILDWINDOWS - расположить все окна по экрану.
rundll32 user,disableoemlayer - сбой системы (!) - выключить все функции ввода-вывода (клавиатура, дисплей, мышь). В результате будет черный экран с курсором и ни на что не реагирующая система, однако Windows продолжает работать.
rundll32 user,enableoemlayer - включить и загрузить OEM Layer, если есть возможность выполнить эту команду дистанционно.