[WINCE]_0_1_视频教程笔记_WINCE视频教程

##############################################################################

WinCE-01wince概述:

(1)

   WINCE是什么:

       统一解释没有,普遍认为是Consume Electronics(消费电子)。

       

       微软解释为:CE不具有任何意义,只是暗示C代表了Compact,connectable等意义。

       

       Windows CE是一个运用于嵌入式设备、娱乐设备和移动通用设备平台的组件式操作系统。

(2)

   Windows Embedded CE诞生于1996年

   

    目前最新的版本是WindowsCE7.0

   

    应用最为深远的是WindowsCE4.2

   

    应用当中最新的版本是WindowsCE6.0

(3)

    (WinCE的再定制版)

    一种是微软内部的团队,制造了如:

   Windows Mobile、Windows POSReady、Windows XPE等在一定范围内通用的操作系统。

(4)

    针对于可裁剪WindowsCE平台的硬件驱动开发。

   

    针对于裁剪好的WindowsCE平台的应用开发。

(5)

   Windows CE的开发流程

       导入BSP包

       -》定制Windows CE平台(修改添加功能组件,修改配置文件)

       -》导出SDK

       -》在PC端用VS.NET进行开发

       -》将编译好的内核下载到Windows CE平台上

(6)

   windows CE应用开发工具

       VS 2005

       Wince SDK

       ActiveSync 4.2

##############################################################################

WinCE-02wince开发准备:

(1)

    模拟器和开发板的区别

(2)

    开发windows CE应用程序的方法:

       Windows SDK

       

       使用MFC类库开发(微软对MFC已经放弃了)

       

       .NET compact Framework开发(使用.NET Framework类库)

           优点:可以快速开发应用

           缺点:需要安装.NET类库

                  版本之间兼容性差

(3)

   Windows SDK API 流程要求很严格,开发速度不是很高。

   

    使用时可以使用微软的类库,MFC使用起来比较困难,并且MFC在设备上也需要占用一定的空间。

   

   .NET移植性不是太好

(4)

    应用程序开发辅导工具

       Remote File Viewer文件查看器

       Remote Process Viewer进程查看器

       Remote Zoomln 屏幕抓取器

       Remote Registry Editor注册表编辑器

       Remote HEap Walker远程堆查看器

##############################################################################

WinCE-03wince上的HelloWorld:

(1)

##############################################################################

WinCE-04wince开发基本概念:

(1)匈牙利命名法:

    在变量前都加上数据类型的前缀

       如: integer      - i or n

           Word         - w or s

           Double       - dw

           Long         - l

           Chae         - c

           String       - sz

           Pointer      - p

           Long Pointer - lp

           Handle       - h

           Window Handle- hwnd

           Struct size  - cb

           

(2)

   LPTSTR

       LP   -- Long Pointer

       T    -- Wide character

       STR  -- String

 (3)窗口:

       窗口就是屏幕上的一个矩形区域

    作用:

       应用程序通过它和用户信息的交互

       

       所以说窗口时Windows 应用程序的基本操作单元

       

       它是应用程序与用户之间交互的接口环境

       

       也是系统管理应用的基本单位

(4)

   Windows 消息机制

       硬件事件,如按键被按下,鼠标被点击等事件。

       

       将事件转化为消息,并将消息进入系统消息队列,然后系统消息队列经过系统调度器进入到你的应用程序里面,然后在你的应用程序里面通过消息循环将消息获得,发送给消息处理函数,在消息处理函数中进行消息处理。(系统消息循环不一定每时每刻的将消息发送过去)

       

       消息处理函数只能处理很少一部分消息,大部分消息经DefWindowProc函数将消息返回给操作系统,系统进行默认处理。

##############################################################################

WinCE-05对Hello World程序进行优化:

(1)

    参照MFC的消息映射机制;

    将消息映射到对应的函数上;

   Struct DecodeUnit {

       UINT message;

       LONG (*fun)(HWND hwnd,UINT message,WPARAM wParam,LPARAM lParam);

    }

   

   #define dim(x) (sizeof(x)/sizeof(x[0]))

   

   LONG OnDestroy(HWND hwnd,UINT message,WPARAM wParam,LPARAM lParam);

   LONG OnPaint(HWND hwnd,UINT message,WPARAM wParam,LPARAM lParam);

   

   Struct DecodeUnit MainMessageProc[] = {

   WM_DESTROY, OnDestroy,

   WM_PAINT  , OnPaint,

    }

   

   LRESULT CALLBACK WndProc(HWND hwnd,UINT message, WPARAM wParam, LPARAMlParam)

    {

       for(int i = 0; i < dim(MainMessageProc); i++)

       {

           if(MainMessageProc[i].message == message)

           {

               (*MainMessageProc[i].fun)(hwnd,message,wParam,lParam);

           }

       }

       return DefWindowProc(hwnd,message,wParam,lParam);

   } 

    

    

(2)

    消息机制Windows 的消息系统是由3个部分组成的:

       a)消息队列。Windows能够为所有的应用程序维护一个消息队列。应用程序必须从消息队列中获取消息,然后分派给某个窗口。

       b)消息循环。通过这个循环机制应用程序从消息队列中检索消息,再把它分派给适当的窗口,然后继续从消息队列中检索下一条消息,再分派给适当的窗口,依次进行。

        c)窗口过程。每个窗口都有一个窗口过程来接收传递给窗口的消息,它的任务就是获取消息然后响应它。窗口过程是一个回调函数;处理了一个消息后,它通常要返回一个值给Windows。

       

    注意回调函数是程序中的一种函数,它是由 Windows 或外部模块调用的。

    一个消息从产生到被一个窗口响应,其中有5个步骤:

       a) 系统中发生了某个事件。

       b) Windows 把这个事件翻译为消息,然后把它放到消息队列中。

       c) 应用程序从消息队列中接收到这个消息,把它存放在 TMsg 记录中。

       d) 应用程序把消息传递给一个适当的窗口的窗口过程。

       e) 窗口过程响应这个消息并进行处理。

    步骤c和d构成了应用程序的消息循环。

    消息循环往往是Windows 应用程序的核心,因为消息循环使一个应用程序能够响应外部的事件。消息循环的任务就是从消息队列中检索消息,然后把消息传递给适当的窗口。

   Windows 操作系统最大的特点就是其图形化的操作界面,其图形化界面是建立在其消息处理机制这个基础之上的。如果不理解 Windows 消息处理机制,肯定无法深入的理解 Windows 编程.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值