高分求教,如何把Win98下开发的程序移植到WinCE?

lgzxl 2000-09-07 02:33:00
由于原来找不到VC++ ToolKits for WinCE,我只好在VC++6.0下完成了一个应用程序的开发,我原来以为只要重新编译一下就ok了.现在我已在WinNT40下安装好了VC++6.0和VC++ ToolKits for WinCE,却不知道如何将Win32工程转化为WCE工程.请问有现成的办法吗?
...全文
433 20 打赏 收藏 转发到动态 举报
写回复
用AI写文章
20 条回复
切换为时间正序
请发表友善的回复…
发表回复
gq 2001-06-16
  • 打赏
  • 举报
回复
多谢。受教。
duanyi 2000-09-08
  • 打赏
  • 举报
回复
Windows CE正在被很多人接受,而Windows CE上的应用程序还比较少,因此Windows CE应用程序将在一定时间和范围内具有不少潜力和市场。尤其是Windows CE上的网络编程有可能成为热点。

编写Windows CE应用程序一定要"惜墨如金",提高代码运行效率。

测试Windows CE应用程序时,务必在Windows NT上测试比较成熟之后再下载到Windows CE上,过多的安装/卸载和在Windows CE机器上运行低效的应用程序有可能降低系统速度。
duanyi 2000-09-08
  • 打赏
  • 举报
回复
Windows CE开发工具包中的桌面仿真工具让你能够在任何一台运行Windows NT的机器上编写并调试Windows CE应用程序,而不必把它们下载到Windows CE机器上。你甚至可以使用仿真器来编写一个Windows CE应用程序,而根本用不到Windows CE机器。但是,尽管你能够在仿真器上判断你的应用程序的很多性能和表现情况,最终,当你的应用程序在仿真环境中正常运行之后,你应当把它们下载到目标设备中做作后的测试和评估。
---- 测试时,程序的易用性也十分重要,因为大多数Windows CE机器仅有一个小的桌面区域作为访问设备,这将带来很多意想不到的问题
duanyi 2000-09-08
  • 打赏
  • 举报
回复
使用TCHAR或者LPTSTR来声明字符串变量。使用TCHAR声明字符串变量的代码既能够作为基于Unicode代码编译,又能够作为基于ASCII代码编译。

---- 使用Text宏来表示字符串,比如Text("a string")。使用Text宏的优点在于:当使用UNICODE编译标志编译时,该字符串作为Unicode代码被编译;当使用ANSI编译标志编译时,该字符串又可以作为ASCII代码被编译。

---- 使用sizeof(TCHAR)操作符来确定你的代码对于Unicode和ASCII都有效。当你增加指针时,记住ASCII字符是单字节的,但是Unicode字符则是双字节的。
duanyi 2000-09-08
  • 打赏
  • 举报
回复
Windows CE是32位操作系统,它不支持任何16位函数,还有一些32位函数没有完全被实现。同时, Windows CE支持并扩展了一些Win32 API的子集。

---- 另外,Windows CE支持了COM/OLE的一部分,你可以重用使用COM/OLE、MFC或ATL的应用程序代码,再作一些微小的修改即可。

duanyi 2000-09-08
  • 打赏
  • 举报
回复
Windows CE像Windows NT一样,是Unicode环境。尽管Windows CE支持ASCII功能来进行文件交换,但是Windows CE的本地文本格式是Unicode。下面列出了将基于ASCII的代码转换到基于Unicode代码的注意事项:

---- 在程序中包含tchar.h头文件。该文件包含所有必要的转换。

---- 使用Win32字符串函数,而不要使用C运行库中等价的函数。

duanyi 2000-09-08
  • 打赏
  • 举报
回复
Windows CE机器和桌面系统的最大差别就在于用户界面。

---- 显示器是关键之一。Windows CE机器中显示器通常很小,而且分辨率也不高。尽管一些机器有彩色显示器,但是还有很多只支持灰度图像。因此,对于那些显示器无法表示的信息(如高分辨率图像信息)来说,你需要自行开发一种方法来传达给客户。

duanyi 2000-09-08
  • 打赏
  • 举报
回复
---- 另一个关键的用户界面的组成部分是指点设备,它让用户能够与用户界面中的很多元素交互。尽管Windows CE机器中没有鼠标,但很多Windows CE机器都拥有触摸屏以及手写笔等类似于鼠标的指点设备。但是还有一些Windows CE界面根本没有这些设备,它们依赖于其它技术进行导航,比如方向键,另外还有一些革新式的交互方式,比如语音导航。

---- 还有一个需要注意的地方就是Windows CE机器不可能配备键盘,即使有虚拟键盘,也很难操作,因此在编写应用程序过程中,尽量让用户少用键盘录入信息。

duanyi 2000-09-08
  • 打赏
  • 举报
回复
如前所述,Windows CE提供了Modem接口,另外,它也支持一些桌面系统不常用到的通讯设备,包括红外线收发器、广播接收器、GPS等,编写相关应用程序时要特别考虑
duanyi 2000-09-08
  • 打赏
  • 举报
回复
运行Windows CE的机器(以下简称Windows CE机器)通常比台式计算机的资源贫乏的多,但它们也有很多特别的设备,比如有的Windows CE机器配备了全球卫星定位系统(Global Positioning System,GPS)。因此开发中,对于Windows CE的硬件配置是要重点考虑的。而通常最重要的几点莫过于内存、电源、人机交互设备(详见3-2节)以及通讯设备。
duanyi 2000-09-08
  • 打赏
  • 举报
回复
Windows CE被设计用来运行在很少的内存上的,它们通常也没有大容量存储设备。Windows CE支持了一些特有的管理有限内存的函数、结构、消息。比如,如果内存资源在操作中变得紧缺时,Windows CE就有一个减小内存使用以及恢复可用内存的函数。该函数的关键是WM_HIBERNATE消息,它通知应用程序"内存已经很少了。这个消息在Win32平台中并不存在,你必须针对Windows CE程序实现该消息的处理程序
duanyi 2000-09-08
  • 打赏
  • 举报
回复
Windows CE机器的电源通常基于电池的,而且电量很有限。开发时应遵循下面的原则来使用大多数有限的能量资源:

---- 避免占用不必要的CPU资源。

---- 限制使用一些常用的桌面机器的硬件,因为他们能够迅速消耗电池,比如Modem。

---- 不要"超负荷"使用电池资源。
duanyi 2000-09-08
  • 打赏
  • 举报
回复
Windows CE是一个32位操作系统,因此在编写Windows CE应用程序时,你可以重用桌面Windows应用程序的大部分代码。尽管将现有Win32代码转变成Windows CE代码比从零做起快的多,你必须在转换时始终牢记Windows CE操作系统与桌面平台的很多不同:
duanyi 2000-09-08
  • 打赏
  • 举报
回复
1 硬件设计和功能不同。比如,有限的内存将会大大影响你对图形的操作速率。
2 用户界面的不同。传统的用户界面诸如键盘、鼠标和显示器将不再用于Windows CE操作系统。
3 Windows CE API与Win32 API的不同。Windows CE支持Win32 API的一部分函数,同时又扩充了一些特定的Windows CE函数,如命令条(Command Bar)API。
4 字符集的不同。Windows CE字符集类似于Windows NT而不同于Windows 9x,它是基于Unicode的。
duanyi 2000-09-08
  • 打赏
  • 举报
回复
---- 你选择的工具包将成为你现有IDE的一部分,并提供调试和测试Windows CE应用程序的工具。比如,Windows CE Toolkit for Visual C++提供了一个仿真程序,允许你在Windows桌面系统上(如Windows NT)监测Windows CE应用程序的执行情况,而不需要把它们装载到Windows CE机器上再调试;Windows CE Toolkit for Visual C++和Windows CE Toolkit for Visual Basic都提供了从桌面系统访问远程设备、并在远程设备上执行特定的Windows CE任务的工具。
duanyi 2000-09-08
  • 打赏
  • 举报
回复
---- 当然, 工具包中也提供了一些为Windows CE定制了的技术和工具,如COM(Component Object Model,组件对象模型)、MFC(Microsoft Foundation Class,微软基类库)、ATL(Active Template Libraries,活动模板库)以及NLS(National Language Support国家语言支持)。如果你精通桌面开发,那么一定非常熟悉这些技术,这里不再赘言。
duanyi 2000-09-08
  • 打赏
  • 举报
回复
要编写Windows CE应用程序,你需要使用Windows CE开发工具包。该工具包将成为你的开发系统。工具包的选择由你使用的编程语言而定,你可以选择的编程语言有Visual C++、Visual Basic和Visual J++。但是最佳选择莫过于Visual C++,因为掌上电脑资源有限,C++编译器效率高、性能好,应用程序结构紧凑;而Visual Basic应用程序代码过于冗长且效率低下;Visual J++在确定平台上的运行性能不如Visual C++。在你决定编程语言之后,便需要安装相应的工具包。Windows CE开发工具包有如下几种:

Windows CE Toolkit for Visual C++
Windows CE Embedded Toolkit for Visual C++
Windows CE Toolkit for Visual Basic
Windows CE Toolkit for Visual J++
iforever 2000-09-08
  • 打赏
  • 举报
回复
这本书有你要的答案
<VISUALC++6.0技术内幕>
北京希望电子出版社
老外的
价格95.00元.
duanyi 2000-09-08
  • 打赏
  • 举报
回复
Lgzxl:
下面这篇文章对你一定有用!!!
oldworm 2000-09-07
  • 打赏
  • 举报
回复
Windows 下的内容并是都被windows CE所支持的。

16,471

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧