Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.01.29;
Скачать: CL | DM;

Вниз

Апплеты панели управления   Найти похожие ветки 

 
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 вся ветка

Текущий архив: 2004.01.29;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.015 c
1-93437
GAlexis
2004-01-16 14:13
2004.01.29
Округление чисел


1-93421
sashok
2004-01-16 19:34
2004.01.29
Работа с несколькими объектами


6-93618
Andersen
2003-11-25 16:49
2004.01.29
DNS - сервер


1-93488
snake1977
2004-01-15 11:14
2004.01.29
TThread + TTimer


1-93548
Наиль
2004-01-17 23:53
2004.01.29
функция getcursorpos