скрыть

скрыть

  Форум  

Delphi FAQ - Часто задаваемые вопросы

| Базы данных | Графика и Игры | Интернет и Сети | Компоненты и Классы | Мультимедиа |
| ОС и Железо | Программа и Интерфейс | Рабочий стол | Синтаксис | Технологии | Файловая система |



Google  
 

Как поместить приложение Delphi в Панель Управления



Для использования апплета измените его расширение с "dll" на "cpl" и поместите в системную директорию.


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.






Copyright © 2004-2016 "Delphi Sources". Delphi World FAQ




Группа ВКонтакте   Ссылка на Twitter   Группа на Facebook