Hello2
既然已经有了基础,那么是时候把Hello1升级一下,至少应该让人可以看见它。因为很多Windows CE系统没有控制台驱动程序,Hello2创建一个消息框而不是用printf来显示“Hello CE”文字。Hello2的程序如下表1-2所示:
列表1-2: Hello2,使用MessageBox函数的简单应用程序
Hello2.cpp
//======================================================================
// Hello2 - A simple application for Windows CE
//
// Written for the book Programming Windows CE
// Copyright (C) 2003 Douglas Boling
//======================================================================
#include "windows.h"
//
// Program entry point
//
int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance,
LPWSTR lpCmdLine, int nCmdShow) {
MessageBox (NULL, TEXT ("Hello World"), TEXT ("Hello2"), MB_OK);
return 0;
}
编译并运行Hello2,可以看到如图1-2所示的小窗口。
图1-2(略)
运行在Windows CE桌面的Hello2
替代printf的MessageBox函数为Hello2提供了2个特性。第一个也是最明显的一个就是它创建一个窗口,并在上面显示"Hello World"文本。第二个特性是MessageBox函数直到用户关闭消息窗口才会返回。这允许Hello2一直保持运行,直到用户关闭窗口。
MessageBox函数原型如下:
int MessageBox (HWND hWnd, LPCTSTR lpText, LPCTSTR lpCaption, UINT uType);
第1个参数是顶层窗口的句柄,它是消息窗口的父窗口。目前我们把这个参数置为NULL,因为Hello2还没有任何其它窗口。第2个参数是准备显示在窗口里的文字。注意传入的字符串是用TEXT宏包裹的,确保它能够编译成Unicode版本。第3个参数lpCaption是显示在窗口标题栏的文字。最后一个参数uType是一系列标志位,规定消息框如何显示在屏幕上。标志位规定了消息框中按扭的数量和类型,规定了图标的类型以及消息框窗口的风格设置。
表1-2列出了Windows CE下有效的标志位
表1-2: 默认标志位
标志位
按钮或者图标
用于按钮 |
|
MB_OK |
OK |
MB_OKCANCEL |
OK and Cancel |
MB_RETRYCANCEL |
Retry and Cancel |
MB_YESNO |
Yes and No |
MB_YESNOCANCEL |
Yes, No, and Cancel |
MB_ABORTRETRYIGNORE |
Abort, Retry, and Ignore |
用于图标 |
|
MB_ICONEXCLAMATION, MB_ICONWARNING |
Exclamation point |
MB_ICONINFORMATION, MB_ICONASTERISK |
Lower case i within a circle |
MB_ICONQUESTION |
Question mark |
MB_YESNO |
Yes and No |
MB_ICONSTOP, MB_ICONERROR, MB_ICONHAND |
Stop sign |
MB_DEFBUTTON1 |
First button |
MB_DEFBUTTON2 |
Second button |
MB_DEFBUTTON3 |
Third button |
For Window Styles: |
|
MB_SETFOREGROUND |
Bring the message box to the foreground. |
MB_TOPMOST |
Make the message box the topmost window. |
MessageBox的返回值指出用户按了哪个按扭。返回值如下:
IDOK |
OK button pressed |
IDYES |
Yes button pressed |
IDNO |
No button pressed |
IDCANCEL |
Cancel button pressed or Esc key pressed |
IDABORT |
Abort button pressed |
IDRETRY |
Retry button pressed |
IDIGNORE |
Ignore button pressed |
此时值得注意的是,如果你调试和重新编译这个程序,它不会被再次下载到目标设备上的,因为程序早先的版本仍然正在目标系统上运行。换句话说,当您在eVC++中启动一个新的build时,您要确保Hello2没有运行在远程系统上,否则编译过程里的自动下载过程就会失败。如果发生这种情况,关闭应用程序,选择eVC++里[Update Remote File]菜单命令去下载新的编译后的文件。
Hello2展示了一个简单的窗口,但窗口只能按MessageBox函数允许的形式进行配置。如何显示一个完全由程序配置的窗口呢?在我们这样做之前,对Windows 应用程序如何工作的做一个快速浏览是必要的。
分享到:
相关推荐
lazarus-1.0.8-fpc-2.6.2-cross-arm-wince-win32 freepascal 用于开发WINCE程序
标题 "Lazarus-0.9.28.2-fpc-2.2.4-cross-arm-wince-win32" 暗示了一个用于开发针对Windows CE(掌上设备操作系统)应用程序的开源集成开发环境(IDE)——Lazarus的一个特定版本。Lazarus是Free Pascal编译器(FPC...
2. WinCE程序设计: - 开发环境:Visual Studio或Eclipse等集成开发环境(IDE),配合Platform Builder进行系统构建,Visual C++或C#用于编写应用程序。 - API集:WinCE提供了Win32子集API,包括GDI、Win32 API、MFC...
标题 "hobd汉化版-wince" 指向的是一个专为Windows CE(Wince)操作系统汉化的HOBD软件版本。HOBD,全称是"Handy OBD-II",是一款用于汽车诊断的工具,它可以连接到车辆的OBD-II接口,读取并解析车载计算机的数据,...
描述中的".net-cf-wince-curve.rar"是一个包含用于Windows CE平台的曲线绘制控件的压缩文件。该控件可能提供API和方法,使开发者能够轻松地在Wince设备上生成实时数据曲线,这对于需要实时监测和分析数据的科学仪器...
C# 各种文件格式的转换 ----winCE试验版 京华志&精华志出品 希望大家互相学习,互相进步 支持CSDN 支持微软 主要包括C# ASP.NET SQLDBA 源码 毕业设计 开题报告 答辩PPT等
首先,你需要下载适用于Windows CE的Qt源代码包,例如`qt-embedded-wince-opensource-src-4.4.0.zip`。 2. **安装Visual Studio 2005** 安装Visual Studio 2005是必要的,因为Qt的构建系统依赖于其编译器。在安装...
- .NET Compact Framework:微软提供的.NET框架的精简版,允许开发者使用C#或VB.NET开发WinCE应用程序,享受丰富的类库和垃圾回收机制。 - WinAPI:WinCE提供了一套与Windows桌面系统类似的API,使得移植Windows...
- Qt的嵌入式开发包:qt-embedded-wince-opensource-src-4.4.0.zip - Microsoft Visual Studio 2005 (VS2005),用于编译和调试 - Windows Mobile 5.0 Pocket PC SDK,提供针对Windows CE的开发环境 - Microsoft ...
兼容wince5.0/6.0 以下列出的是调试通过的型号列表,仅供参考. 1. WCDMA/DSDPA: Hua Wei E180 Hua Wei E220 Hua Wei E1750(Modem:COM6,ATCMD:COM8,COM7 not use) Hua Wei E1550 Hua Wei E156G(Modem:COM6,ATCMD:...
IDA教程-WinCE ARM调试器入门教程.pdf
wince程序设计中文影印版 积分要多了,不好意思,我也不知道怎么取消 一共三个压缩包,须全部下载了解压,只让传10m,没办法啊 part1 http://download.csdn.net/source/257557 part2 ...
本教程将深入探讨Wince程序设计的基础与高级特性,帮助初学者快速掌握这一领域的核心技能。 一、Windows CE概述 Windows CE是一个可裁剪、实时的、32位的操作系统,其设计目标是满足小型设备的特定需求。它提供了...
2. **打包资源**: 将程序相关的资源文件(如图片、字体、配置文件等)打包成一个可执行的cab文件,方便在WinCE设备上安装。 3. **设备安装**: 将cab文件传输到WinCE设备上,通过设备的安装管理器进行安装。 4. **...
"VS2005-CoreCon-x86-WINCE600"这个安装包就是专门为Windows CE 6.00平台的开发设计的,它包含了构建、调试和测试嵌入式应用程序所需的工具和组件。 首先,"CoreCon"是Visual Studio 2005中的核心连接组件,它是...
标题中的“Image-update--WinCE-6.0.rar_gk7000_update WINCE_wince 6.0”指的是一个针对Windows CE 6.0操作系统进行更新的镜像文件,该更新是针对名为“gk7000”的特定硬件平台设计的。在Windows CE系统中,"image...
- **实验目的**: 掌握使用MFC框架开发WinCE应用程序的方法。 - **实验内容**: - 设计简单的用户界面。 - 实现基本的应用逻辑。 - 测试应用程序的功能。 #### 4.3 基于WINCEDIRECTSHOW的多媒体播放机实验 - **...
"基于ARM-WinCE的电机监控系统设计" 本文将对基于ARM-WinCE的电机监控系统设计进行详细的介绍,包括系统设计、系统结构、硬件电路设计、软件设计和测试过程等方面。 系统设计 基于ARM-WinCE的电机监控系统设计是...
EVC(Embedded Visual C++)是微软为开发WinCE应用程序提供的集成开发环境。 STL-WinCE是针对Windows CE平台定制的STL版本,它允许开发者在WinCE系统中使用如向量(vector)、列表(list)、映射(map)、集合(set...
winCE 程 序 设 计 part2