当前位置: 首页 > 图文教程 > 开发语言 > Delphi > 创建“控制面板”的新项目

Delphi
Action 造成cpu占用过多的奇怪问题
教你如何用Delphi生成GBK码表
Delphi7的WebService与数据库
Delphi实用代码:自绘XP风格菜单
用AdoDataSet实现数据表的导入导出
和md5.asp结果一样的Delphi加密代码
用Delphi制作中国式报表
将12345678.99转换成12,345,678.99
用Delphi编程时如何利用线程
资源文件在DELPHI中的使用
属性和控件编辑器
Delphi中TApplication类的巧用
具有不同字体的列表框
Delphi中易混淆的概念
在Delphi中巧改窗体文件实现控件数组化
Delphi 中自做动态显示的控件
利用Delphi编程发送E-mail
Delphi中怎样监视POP3信箱
DELPHI和注册表
Delphi参考手册

Delphi 中的 创建“控制面板”的新项目


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-30   浏览: 52 ::
收藏到网摘: n/a

 

  当我们打开“控制面板”以后,能看到许多项目,如:系统、显示器等。不过,这些项目并非指向某些可执行的程序,其实,它们是一些特殊的动态链接库,在Windows里注册的类型是“控制面板扩展”,文件的扩展名是“CPL”。

  这种“控制面板扩展”与普通动态链接库(DLL)类似,但必须符合以下的要求:

  1.该动态链接库必须输出一个CplApplet函数,这个函数包含了一些消息,函数的原型如下:

  function CPlApplet(hwndCPL: HWND; uMsg: UINT;

  lParam1: LPARAM; lParam2: LPARAM): LongInt; stdcall;

  2.该动态链接库的扩展名是“CPL”,位于Windows的系统目录下,通常是“\Windows\System”;

  3.函数CplApplet必须处理的消息包括:CPL—INIT、CPL—GETCOUNT、CPL—NEWINQUIRE、CPL—DBLCLK等:

  CPL—INIT:表示程序被(控制面板)发现,返回True或False表示是否继续进行下去。

  CPL—GETCOUNT:确定程序在控制面板中显示的个数,返回值为显示的个数。

  CPL—NEWINQUIRE:用于填写程序的信息。

  CPL—DBLCLK:当图标被双击时触发,这时可以显示一个Form。

  在Delphi中新建一个工程,选择“DLL”,Delphi就会自动创建一个动态链接库的框架,先把这个工程存为“myCPL.dpr”,然后新建一个Form,保存为main.pas。

  myCPL.dpr的内容如下:

  library mycpl;

  uses

   Windows,

   SysUtils,

   CPL,

   Forms,

   main in ′main.pas′ {MainForm};

  {$E cpl}  //表示扩展名是CPL

  {$R *.res}

  function CPlApplet(hwndCPL: HWND; uMsg: UINT;

   lParam1: LPARAM; lParam2: LPARAM) : LongInt; stdcall;

  var

   pNewInfo: PNewCPlInfo;

  begin

   case uMsg of

    CPL—INIT:

    begin

   Result := 1;

  end;

  CPL—GETCOUNT:

  begin

   Result := 1;

  end;

  CPL—NEWINQUIRE:

  begin

   pNewInfo:=PNewCPlInfo(lParam2);

   with pNewInfo^ do

   begin

    dwSize:=sizeof(TNewCPLInfo);

    dwFlags:=0;

   StrPLCopy(szName,′新建项目′, 31);

   StrPLCopy(szInfo, ′我的选项′, 63);

   end;

  end;

  CPL—DBLCLK:

  begin

   with TMainForm.Create(Application) do

    ShowModal;

   Result:=0;

  end;

   end;

  end;

  exports

   CPlApplet;

  begin

  end.

  把编译好的mycpl.cpl拷贝到Windows的System目录下后,打开“控制面板”,你会发现多了一个“新建项目”,用鼠标选中,窗口的状态栏显示:“我的选项”。用鼠标双击,一个Form就显示出来,剩下的事情就不用多说了。

  以上程序在Windows 95、Delphi 4.0下运行通过。