v8.x: Использование программы rundll32.exe в 1С - 1С-ИнтеГрация

v8.x: Использование программы rundll32.exe в 1С



 

Программа rundll32.exe входит в стандартную поставку всех операционных систем семейства Windows и позволяет выполнять различные функции, описанные в библиотеках, драйверах или ActiveX-объектах, как будто они выполняются из программы. Также эта программа входит в состав новой операционной системы Windows Vista, поэтому обзор новой операционной системы, предназначенный для опытных пользователей, никак нельзя назвать законченным, если он не будет содержать описание команд rundll32.exe, доступных в Windows Vista. 

Синтаксис использования программы rundll32.exe следующий: rundll32.exe «библиотека», «функция» «параметры». При этом очень важно понимать, что название функции, хранящейся в библиотеке, зависит от регистра, которым вы ее написали. То есть, например, функции MessageBox и messageBox, в понимании программы rundll32.exe, являются различными функциями, поэтому если в названии функции вы напишете вместо прописной буквы строчную, программа rundll32.exe выдаст ошибку. Название же самой программы rundll32.exe и название библиотеки можно указывать как строчными, так и прописными символами.
 

Пример:
 
Код 1C v 8.х

 //Emigachev Проверим дату на компе

           Если ТекущаяДата()<Дата(2009,1,1) Тогда

                       Предупреждение("Установите правильную дату!");

                       //Открыть диалог установки Даты и Времени

                       ЗапуститьПриложение("rundll32 shell32,Control_RunDLL timedate.cpl");

           КонецЕсли;  



Приведу список наиболее значимых команд (в котором найдете ОЧЕНЬ интересные команды, ну а как их использовать, думайте сами!): 
* rundll32 shell32.dll,Control_RunDLL hotplug.dll - диалоговое окно Отключение или извлечение аппаратного устройства 
* rundll32 diskcopy,DiskCopyRunDll - вызов диалога "Копирование диска". 
* rundll32 keyboard,disable - отключение клавиатуры, действует до следующей перезагрузки. 
* rundll32 mouse,disable - отключение мыши вплоть до перезагрузки. 
* rundll32 krnl386.exe,exitkernel
- выгрузить ядро системы, выход из Windows. 
* rundll32 mshtml.dll,PrintHTML "HtmlFileNameAndPath" - распечатать документ HTML, где "HtmlFileNameAndPath" - путь к файлу и его имя. 
* rundll32 мсprint2.dll,RUNDLL_PrintTestPage - распечатать тестовую страницу на принтере. 
* rundll32 netplwiz.dll,AddNetPlaceRunDll - вызов мастера подключения нового сетевого ресурса "Добавление в сетевое окружение". 
* rundll32 rnaui.dll,RnaWizard - вызов мастера "Удаленный доступ к сети". 
* rundll32 rnaui.dll,RnaWizard
/1 - вызов мастера "Удаленный доступ к сети" без отображения начального окна. 
* rundll32 shell,ShellExecute - открыть Проводник (папка "Рабочий стол"). 
* rundll32 shell32,Control_RunDLL - открыть в Проводнике папку "Панель управления". 
* rundll32 shell32,Control_RunDLL appwiz.cpl,,n - вызов диалогового окна "Установка и удаление программ", в котором будет открыта вкладка с номером "n" (от 1 до 3). 
* rundll32 shell32,Control_RunDLL main
.cpl @0 - открыть диалог "Свойства мыши". 
* rundll32 shell32,Control_RunDLL main.cpl @1 - открыть диалог "Свойства клавиатуры". 
* rundll32 shell32,Control_RunDLL main.cpl @2 - открыть папку "Принтеры". 
* rundll32 SHELL32,SHHelpShortcuts_RunDLL PrintersFolder - открыть папку "Принтеры" (другой способ). 
* rundll32 shell32,Control_RunDLL main.cpl @3 - открыть папку "Шрифты". 
* rundll32 SHELL32,SHHelpShortcuts_RunDLL FontsFolder - открыть папку "Шрифты" (другой способ). 
* rundll32 SHELL32,Control
_RunDLL modem.cpl, add - открыть диалог "Свойства модема". 
* rundll32 shell32,Control_RunDLL timedate.cpl - открыть диалог "Дата и время". 
* rundll32 shell32,OpenAs_RunDLL - вызвать диалог "Открыть с помощью...". 
* rundll32 shell32,ShellAboutA WINHOWTO.RU - информация о версии Windows. 
* rundll32 shell32,SHExitWindowsEx 0 - закрыть все программы, перегрузить оболочку. 
* rundll32 shell32, SHExitWindowsEx 1 - выключить ПК. 
* rundll32 SHELL32, SHExitWindowsEx -1 - перегрузить оболочку Windows. 
* rundll32
shell32, SHExitWindowsEx 2 - перегрузить ПК.
 
* rundll32 shell32,SHExitWindowsEx 4 - принудительно закрыть все программы.
 
* rundll32 shell32,SHExitWindowsEx 8 - выход из Windows и выключение ATX-совместимого ПК.
 
* rundll32 shell32,SHFormatDrive - вызов диалога форматирования диска А:.
 
* rundll32 SHELL32,SHHelpShortcuts_RunDLL AddPrinter - запуск "Мастера установки принтера".
 
* rundll32 shell32,SHHelpShortcuts_RunDLL Connect - запуск мастера подключения сетевого диска.
 
* rundll32 SHELL32,SHHelpShortcuts_RunDLL PrintTestPage - распечатать тестовую страницу.
 
* rundll32 sysdm.cpl,InstallDevice_Rundll - вызов мастера установки оборудования. 
* rundll32 url.dll,FileProtocolHandler %1 - открыть веб-страницу, где %1 - URL сайта (включая
http://). 
* rundll32 url.dll,MailToProtocolHandler %1 - создать новое письмо, где %1 - e-mail адресата. 
* rundll32 user,CASCADECHILDWINDOWS - расположить все окна каскадом. 
* rundll32 user,TILECHILDWINDOWS - расположить все окна по экрану. 
* rundll32 user,disableoemlayer - сбой системы (!) - выключить все функции ввода-вывода 
(клавиатура, дисплей, мышь
). В результате будет черный экран с курсором и ни на что не реагирующая система, однако Windows продолжает работать. 
* rundll32 user,ExitWindowsExec - быстрая перезагрузка Windows. 
* rundll32 user,RepaintScreen - выполнить команду "Обновить". 
* rundll32 user,SetCaretBlinkTime n - задать частоту мигания курсора, соответствующую значению параметра n. 
* rundll32 user,SetCursorPos - переместить курсор мыши в верхний левый угол экрана. 
* rundll32 user,SetDoubleClickTime n - задать скорость двойного
нажатия левой кнопки мыши (Double Click), соответствующую параметру n. 
* rundll32 user,SwapMouseButton - поменять местами клавиши мыши (обратная смена невозможна). 
* rundll32 user,WNetConnectDialog - вызов диалога "Подключение сетевого диска". 
* rundll32 user,WNetDisconnectDialog - вызов диалога "Отключение сетевого диска". 
* rundll32 AppWiz.Cpl,NewLinkHere %1 - запуск мастера создания нового ярлыка, где %1 - путь к исходному файлу. 
* rundll32.exe shell32.dll, SHHelpShortcuts_RunDLL Connect.
Вызвать мастер подключения сетевых дисков.
 
* rundll32.exe shell32.dll, ShellAboutA. Вызвать диалог, отображающий версию операционной системы Windows. Также данный диалог можно отобразить, выполнив команду winver.exe.
 
* rundll32.exe IEAKENG.dll, BrowseForFileA. Отображает дерево файловой системы жесткого диска компьютера.
 
* rundll32.exe ndfapi.dll, NdfRunDllHelpTopic «html-страница». Вызвать диалог HELP AND SUPPORT на указанной странице. Например, в качестве html-страницы можно использовать вызов mshelp://Windows/?id=33307acf-0698-41ba-b014-ea0a2eb8d0a8.
 
* rundll32.exe shell32.dll, OpenAs_RunDLL "путь и имя файла". Вызвать диалог OPEN AS… для открытия данного файла.
 
* rundll32.exe shell32.dll, Control_RunDLL Cliconfg.dll. Отображает диалог SQL Server Client Network Utility. 
* rundll32.exe shell32.dll, Control_RunDLL Hotplug.dll.
Отображает диалог удаления съемного устройства. 
* rundll32.exe admparse.dll, CheckDuplicateKeysA "
путь и имя файла". Переписывает содержимое данного файла. 
* rundll32.exe IEAKENG.dll, BToolbar_SaveA "
путь к папке". Создает папку. Если данная папка уже существует, тогда все ее содержимое будет удалено. 
* rundll32.exe appwiz.cpl, GetProgramsOnline. Запускает браузер Internet Explorer и загружает страницу http://g.msn.com/WMHFUSEN/101724.
 
* rundll32.exe shell32.dll, ShellExec_RunDLL "команда". Выполняет команду.
 
* rundll32.exe url.dll, FileProtocolHandler "каталог". Открыть папку. Если вы не укажете папки, тогда будет открыта папка вашего профиля.
 
* rundll32.exe WININET.dll, RunOnceUrlCache "путь к папке". Удаляет все файлы указанной папки, имеющие атрибут FILEATTRIBUTETAGINFORMATION.
 
* rundll32.exe xwizards.dll, ProcessXMLFile "путь и имя xml-файла". Выполнить xml-файл.
 
* rundll32.exe user32.dll, mouse_event. Выполнить нажатие правой клавиши мыши.
 
* rundll32.exe user32.dll, SetCursorPos. Установить курсор в правый нижний угол экрана.
 
* rundll32.exe dfshim.dll, KillService. Остановить работу службы фонового обновления dfsvc.exe
 
* rundll32.exe IERNONCE.dll, RunOnceExProcess. Выполняет команды, описанные в ветви реестра HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx (или в ветви корневого раздела HKCU).

 

 



Назад в раздел