wince控制面板如何添加应用程序

本文详细介绍了如何将应用程序添加到WinCE控制面板中。首先,控制面板由Ctlpnl.exe、Control.exe和.cpl文件组成,.cpl文件是一个DLL,导出CPLApplet函数来处理消息。接着,文章讲述了CPlApplet函数处理的不同消息类型及其作用,如CPL_INIT、CPL_GETCOUNT等。然后,按照创建WinCE工程、添加CPL工程、编写CPlApplet函数、修改工程配置的步骤,逐步讲解了将应用程序集成到控制面板的过程。最后,编译并运行示例应用程序HelloCPL,展示了成功添加到控制面板的效果。
摘要由CSDN通过智能技术生成

作者:ARM-WinCE


WinCE系统中的控制面板和Windows系统中的控制面板原理是一样的,里面就是包含了一些应用程序。WinCE系统的控制面板由Ctlpnl.exe,Control.exe和一些.cpl文件组成,其中Ctlpnl.exe和Control.exe用于控制控制面板的文件夹显示和架构,而.cpl文件和控制面板中的实际应用程序相对应。

 

WinCE的控制面板中的每个应用程序都由两部分组成:应用程序本身和所对应的.cpl文件。实际上.cpl文件就是一个dll,在该dll中会导出CPLApplet函数,该函数会处理来自控制面板的消息(CPL_INIT, CPL_DBCLK, CPL_STOP等),然后根据相应的消息来调用应用程序。

 

先来看一下CPlApplet函数,如下:

LONG CPlApplet(HWND hwndCPl, UINT msg, LPARAM lParam1, LPARAM lParam2)

hwndCPl:控制面板窗口的句柄

msg:发给控制面应用程序的消息

lParam1:消息参数1

lParam2:消息参数2

 

该函数会根据msg参数传入的消息进行相应的处理,WinCE中所支持的控制面板消息如下:

CPL_INIT:被首次加载的时候会收到该消息,也是第一个消息,用于初始化控制面板应用程序,比如内存分配等。

CPL_GETCOUNT:第二个被收到的消息,该消息用于获得该控制面板应用程序中的组件数,因为.cpl文件中可能包含多个Applet程序。

CPL_NEWINQUIRE:查询组件信息,如果该.cpl中包含多个组件,那么lParam1表示组件号,lParam2是一个指向NEWCPLINFO结构的指针,其中NEWCPLINFO结构用于描述组件信息。

CPL_DBCLK:用户在控制面板界面中双击某个应用时,会收到该消息,在该消息中执行对应的应用程序。如果包含多个组件,那么lParam1表示组建号,lParam2为传给应用程序的数据。

CPL_STOP:关闭控制面应用程序时,收到该消息,用于释放资源。如果包含多个组件,那么lParam1表示组件号,lParam2为传给应用程序的数据。

CPL_EXIT:在CPL_STOP消息之后,控制面板释放该应用程序时,收到该消息。

 

在CPlApplet中收到CPL_NEWINQUIRE消息时,会初始化NEWCPLINFO结构来描述组件信息,该结构定义如下:

typedef struct tagNEWCPLINFO {

  DWORD dwSize;

  DWORD dwFlags;

  DWORD dwHelpContext;

  LONG lData;

  HICON

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值