$put_perv_real = "/home/www/dvakompa-ru/dopol/"; ?>
Команда RUNDLL32 (RUNDLL для 16-разрядных Windows) изначально разрабатывалась для внутреннего использования в корпорации Microsoft в качестве отладочного программного обеспечения и предназначалась для вызова функций, экспортируемых библиотеками DLL. Но поскольку RunDLL32 оказалась удобным и простым средством, предоставляющим реализовать системные возможности общего характера, в настоящее время она включена в состав всех дистрибутивов Windows и широко используется в качестве стандартного компонента системы. DLL - Dynamic Link Library — библиотека динамической компоновки, динамически подключаемая библиотека, которая может многократно использоваться разными программными приложениями. Описание библиотек и функций можно найти на сайте сети разработчиков Microsoft MSDN
Формат командной строки RUNDLL32:
RUNDLL32.EXE имя_библиотеки_dll,точка входа функции аргументы функции
Имена функций и параметры чувствительны к регистру, поэтому обязательно учитывайте этот факт при наборе команд. При отсутствии параметров функций или их неверных значениях, команда может завершиться без каких либо сообщений или же с сообщением об аварийном завершении RUNDLL32.EXE
Одна из наиболее часто используемых библиотек - shell32.dll. Данная библиотека содержит несколько десятков функций, большинство из которых предназначено для получения информации о системе и системного управления.
rundll32.exe shell32.dll,ShellAboutA – отобразить сведения о Windows. Расширения файлов набирать не обязательно. Команда без расширений – rundll32 shell32,ShellAboutA;
rundll32 shell32,Control_RunDLL - открыть окно "Панель управления";
rundll32 shell32,Control_RunDLL desk.cpl - открыть окно "Свойства Экрана" панели управления. Как и в предыдущем примере, вызывается функция Control_RunDLL библиотеки shel32.dll, но ей передается параметр desk.cpl;
rundll32 shell32, RestartDialogEx - вызвать окно с запросом на перезагрузку Windows. Вместо функции RestartDialogEx можно использовать функцию RestartDialog однако, нужно учитывать тот факт, что последняя разрабатывалась для 16-битных Windows, и в тех случаях, когда в библиотеке присутствует функция с Ex, предпочтительнее использовать ее, во избежание проблем с совместимостью;
rundll32 shell32.dll,Control_RunDLL hotplug.dll - вызвать окно безопасного извлечения устройства;
Некоторые библиотеки могут содержать функцию для отображения подсказки по использованию:
RUNDLL32 printui.dll,PrintUIEntry /? - отобразить справочную информацию по пользовательскому интерфейсу принтера.
Нужно отметить, что возможности утилиты rundll32.exe нередко используются вирусописатели, в частности для вызова внедренных в легальный код вредоносных функций, использования поддельных библиотек, например, загружаемых из каталога временных файлов пользователя и т.п.
Для получения информации об экспортируемых функциях библиотек сторонних производителей, можно использовать обычный текстовый редактор или специализированное программное обеспечение, как например, DLL Export Viewer от Nirsoft.