Форум: "WinAPI";
Текущий архив: 2004.01.29;
Скачать: [xml.tar.bz2];
ВнизАпплеты панели управления Найти похожие ветки
← →
Kinder (2003-11-21 23:22) [0]Как сделать менюшку со всем апплетами панели управлния? Т.е. получить их имена и иконки. Но только не перебором фалов cpl в System директории, т.к. не будет имен апплетов.
← →
Closer (2003-11-22 02:22) [1]Найти аплеты можно только с помощью поиска файлов.
Выдрать иконку можно так же как и из "dll", вот URL: http://www.delphiworld.narod.ru/graphic.html
поищи здесь.
А получить имя апплета можно через экспортируемую функцию CPlApplet, как её использовать можно понять из кода:
library Project1; {Измените "program" на "library"}
uses
Cpl, {используем модуль Cpl}
Windows,
Forms,
Unit1 in "Unit1.pas" {Form1};
{$R *.RES}
procedure ExecuteApp;
begin
Application.Initialize;
Application.CreateForm(TForm1, Form1);
Application.Run;
end;
{Сallback-функция для экспорта в Панель Управления}
function CPlApplet(hwndCPl: THandle; uMsg: DWORD;
lParam1, lParam2: LongInt): LongInt; stdcall;
var
NewCplInfo: PNewCplInfo;
begin
Result := 0;
case uMsg of
{Инициализация должна возвращать True.}
CPL_INIT:
Result := 1;
{Число апплетов}
CPL_GETCOUNT:
Result := 1;
{Помещаем информацию об этом апплете в Панель управления.}
CPL_NEWINQUIRE:
begin
NewCplInfo := PNewCplInfo(lParam2);
with NewCplInfo^ do
begin
dwSize := SizeOf(TNewCplInfo);
dwFlags := 0;
dwHelpContext := 0;
lData := 0;
{Иконка для отображения на Панели Управления.}
hIcon := LoadIcon(HInstance, "MAINICON");
{Имя апплета}
szName := "Project1";
{Описание этого апплета.}
szInfo := "Это тестовый апплет.";
szHelpFile := "";
end;
end;
{Выполнение апплета.}
CPL_DBLCLK:
ExecuteApp;
else
Result := 0;
end;
end;
{Экспортирование функции CplApplet}
exports
CPlApplet;
begin
end.
← →
Kinder (2003-11-22 14:27) [2]Спасибо. Попробую.
Просто я думал может API какие есть для этого
Страницы: 1 вся ветка
Форум: "WinAPI";
Текущий архив: 2004.01.29;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.006 c