Чтобы открыть Панель Управления и запустить любую утилиту из Панели Управления, мы будем использовать эту функцию:
function TForm1.Control(const Parametros: String): THandle;
begin
Result := ShellExecute(Application.MainForm.Handle,
nil,
Pchar('c:\windows\rundll32.exe'),
Pchar(Parametros),
nil,
SW_SHOW);
end;
Примечание: Обратите внимание, путь, который передается в первом PChar это C:/Windows/rundll32.exe.
Не забудьте добавить в модуль формы в раздел uses ShellAPI.
uses
ShellApi;
type
TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
function Control(const Parametros: String): THandle;
public
{ Public declarations }
end;
С помощью этого мы сможем сделать много маленьких и простых вещей:
Открыть Панель Управления
Control('shell32.dll,Control_RunDLL');
Установка/Удаление Программ
Control('shell32.dll,Control_RunDLL appwiz.cpl,,1');
Добавление/Удаление Компонентов Windows
Control('shell32.dll,Control_RunDLL appwiz.cpl,,2');
Создание Системного Диска
Control('shell32.dll,Control_RunDLL appwiz.cpl,,3');
Свойства Экрана (Обои)
Control('shell32.dll,Control_RunDLL desk.cpl,,0');
Свойства Экрана (Хранитель Экрана)
Control('shell32.dll,Control_RunDLL desk.cpl,,1');
Свойства Экрана (Оформление)
Control('shell32.dll,Control_RunDLL desk.cpl,,2');
Свойства Экрана (Внешний Вид)
Control('shell32.dll,Control_RunDLL desk.cpl,,3');
Быстрый Поиск
Control('shell32.dll,Control_RunDLL findfast.cpl');
Интернет (Общие)
Control('shell32.dll,Control_RunDLL inetcpl.cpl,,0');
Интернет (Безопасность)
Control('shell32.dll,Control_RunDLL inetcpl.cpl,,1');
Интернет (Содержание)
Control('shell32.dll,Control_RunDLL inetcpl.cpl,,2');
Интернет (Подключения)
Control('shell32.dll,Control_RunDLL inetcpl.cpl,,3');
Интернет (Программы)
Control('shell32.dll,Control_RunDLL inetcpl.cpl,,4');
Интернет (Дополнительно)
Control('shell32.dll,Control_RunDLL inetcpl.cpl,,5');
Региональные Настройки
Control('shell32.dll,Control_RunDLL intl.cpl,,0');
Региональные Настройки (Числа)
Control('shell32.dll,Control_RunDLL intl.cpl,,1');
Региональные Настройки (Валюта)
Control('shell32.dll,Control_RunDLL intl.cpl,,2');
Региональные Настройки (Время)
Control('shell32.dll,Control_RunDLL intl.cpl,,3');
Региональные настройки (Дата)
Control('shell32.dll,Control_RunDLL intl.cpl,,4');
Игровые Устройства (Общие)
Control('shell32.dll,Control_RunDLL joy.cpl,,0');
Игровые Устройства (Дополнительно)
Control('shell32.dll,Control_RunDLL joy.cpl,,0');
Мышь
Control('shell32.dll,Control_RunDLL main.cpl @0');
Клавиатура
Control('shell32.dll,Control_RunDLL main.cpl @1');
Принтеры
Control('shell32.dll,Control_RunDLL main.cpl @1');
Шрифты
Control('shell32.dll,Control_RunDLL main.cpl @1');
Свойства Мультимедиа (Звук)
Control('shell32.dll,Control_RunDLL mmsys.cpl,,0');
Свойства Мультимедиа (Видео)
Control('shell32.dll,Control_RunDLL mmsys.cpl,,1');
Свойства Мультимедиа (MIDI)
Control('shell32.dll,Control_RunDLL mmsys.cpl,,2');
Свойства Мультимедиа (CD Audio)
Control('shell32.dll,Control_RunDLL mmsys.cpl,,3');
Свойства Мультимедиа (Устройства)
Control('shell32.dll,Control_RunDLL mmsys.cpl,,3');
Пароли
Control(,'shell32.dll,Control_RunDLL odbccp32.cpl'W);
Система (Общие)
Control('shell32.dll,Control_RunDLL sysdm.cpl,,0');
Система (Устройства)
Control('shell32.dll,Control_RunDLL sysdm.cpl,,1');
Система (Профили Оборудования)
Control('shell32.dll,Control_RunDLL sysdm.cpl,,2');
Система (Производительность)
Control('shell32.dll,Control_RunDLL sysdm.cpl,,3');
Свойства Оборудования
Control('shell32.dll,Control_RunDLL sysdm.cpl @1');
Мастер Установки Принтера
Control('shell32.dll,SHHelpShortcuts_RunDLL AddPrinter');
Темы Рабочего Стола
Control(,'shell32.dll,Control_RunDLL themes.cpl');
Дата/Время (Общие)
Control('shell32.dll,Control_RunDLL timedate.cpl');
Дата/Время (Зоны)
Control('shell32.dll,Control_RunDLL timedate.cpl,,/f');
Мастер Добавления Модема
Control('shell32.dll,Control_RunDLL modem.cpl,,add');
Установка TCP/IP
Control('setupapi.dll,InstallHinfSection MSTCP.Install 4 nettrans.inf');
Установка Адаптера Телефонной Сети
Control('setupx.dll,InstallHinfSection RNA 12345 rna.inf');
Вызов по Телефонной Линии
Control('rnaui.dll,RnaDial DUNConnectionName');
|