敬业的IT人 >> 编程开发 >> C/C++ >> 也论 Embedded Visual C++

也论 Embedded Visual C++

敬业的IT人 互联网 佚名 2008-1-3 20:10:58

本文示例源代码下载

  一、书籍推荐

  对于想要作些WinCE程序的人来说,推荐书籍《Programming WindowsCE》,由 北京博彦科技发展有限公司翻译,北京大学出版社出版。这本书详细地解说了 WinCE 的内容,不过,遗憾的是,它是基于API,而不是基于MFC的,所以正如付林林君所言,如果不了解些 Windows 内核读起来会有点困难。

  不过,熟悉VC6的诸君大可放心,完全可以像使用VC6那样来使用 Embedded Visual C++,你可以建立一个单文档程序来试试看,一切都很顺手。要注意的就是UNICODE,这点付林林君也说到了,你写字符串时不能 CString strTest="ABC";而应该为:CString strTest=_T("ABC");

  二、关于 Embedded Visual C++版本

  微软现在将版本升级到了4.0和SP2,可是在实际工作中我一直都在使用3.0,全名叫"Microsoft eMbedded Visual Tools versiborder="0" alt="也论 Embedded Visual C++(图一)" width="479" height="236" />

  如果你使用的是Pocket PC,你可以在机型里面选择"Pocket PC",而CPU类型你可以在掌上电脑的"系统"信息里面查询,不能乱选,不然,编译的程序不能运行,我的是ARM,可以看到有个"x86em"类型,选择那个的话,开发环境会自动启动模拟器,在PC机上建立一个目录来运行你的程序。而当你写好程序了,想要移植到其他机型上时,也很简单,不用重新编写程序而只要更改"机型"和CPU类型再编译即可,方便吧,应该感谢微软。对了,如果你使用的是真正的Pocket PC的话,你应该先将Pocket PC和PC机连接上,一般随着Pocket PC买来的时候,厂家会提供与电脑连接的软硬件,你可以去微软的主页下载连接软件Microsoft ActiveSync 3.7.1,不过,这个新版本不能与PalmSize PC连接,而要使用早期的WinCE Server,好像是2.2版。

  • 如何重装xp系统图解
  • 下载Flash播放插件
  • 巧妙清除Windows 2000/XP登录密码
  • 如何利用路由器设置局域网
  • QQ空间打不开
  • 开机后鼠标不动怎么办
  • Excel密码保护的解除方法与解除原理
  • Windows XP注册表详解
  • 3dmax不锈钢金属材质的制作方法
  • 硬盘变成raw格式怎么办

  不是的话,可以改过来,是的话,单击Cancel即可。

  2、在View的OnDraw中,加入下面代码:

void CMy123View::OnDraw(CDC* pDC)
{
  CMy123Doc* pDoc = GetDocument();
  ASSERT_VALID(pDoc);
  //显示中文:
  RECT rect;
  rect.top=0;  rect.left=0;  rect.right=400;  rect.bottom=rect.top+15;
  CString StrTmp=_T("中国");
  pDC->DrawText(StrTmp,&rect,DT_LEFT|DT_SINGLELINE);
}

  注意,这里不是使用VC6.0里面的TextOut()函数,而是DrawText(),原因大家参考我推荐的那本书。

  3、编译,注意CPU选择,然后编译完成后就会自动下载到掌上电脑里面,哦,对了,我的Poceket PC的操作系统是 MicrosoftPoceket PC 2002 中文版,如果操作系统是英文版的,那么需要安装外挂字库,就像当年在Windows95上普遍使用的中文之星一样,否则乱码。如果你的程序不能自动下载,你也可以先编译,完成后拷贝到掌上电脑里面里面运行。

  4、在模拟器上运行程序是很好的,因为只有这样你才能运行在Debug模式下并跟踪运行,如果使用的是真正的掌上电脑,呵呵,只好看结果来猜问题。但是有时非要这样不可,比如,你编写了一个串口程序,当你运行模拟器时,应该会得到错误报告。

  四、一些问题

  eMbedded Visual C++使用起来很顺手,但是不要想当然地按照VC6那样来使用,因为,这里提供的MFC是PC版的MFC的一个子集,很多东西能够在PC上运行但CE不支持,安装了Microsoft eMbedded Visual Tools version 3.0后,它提供的帮助可以随时按下F1来求助,大家有问题多看看。

  付林林君提到的 Platform builder,我没有见过,好像功能很牛啊,各位大侠,有这方面的知识的还请指教,谢谢。

收藏地址:进入讨论组讨论。

  WinCE 程序与PC程序在系统里的运行不太相同,很多时候,单击WinCE程序右上角的X不是将其关闭,而是将它切换到后台,当你用WinCE系统自带的进程察看器察看时,就会发现它在那里占着资源呢,要关闭它,应该选择 菜单->退出,微软这么做,是WinCE系统设计本身带来的,不是坏事,但大家要知道有这么一回事。

  随文章附上一个压缩包,里面包含两个小程序,两个程序都是Poeckt PC下面的,大家可以自行更改其操作系统平台,其中:

  123——演示了在客户区显示中文,单击 菜单->退出 来结束程序。

  ColorT——演示了简单的画圆和中文菜单。单击 右上角X 不能关闭程序,要去WinCE系统自带的进程察看器里面关闭。

  "1、如何调节语调。声音之所以有Mary和Sam的 区别,实际上是语调不同。"这种说法是不对的,声音之所以有Mary和Sam的区别不单是语调不同的问题,而是Mary和Sam有根本性的不同,虽然也可以调节语调。

  "3、如何把 Windows上的 TTS 移植到 PocketPC 上面。"就是我在研究eMbedded Visual Tools时发现的问题,现在还没有解决,还请有道之士指导。

  让我们一同鄙视那些"吸血鬼"(有能力但是从来不上传的,只是一味吸取精华的ren)。

收藏地址:进入讨论组讨论。
粤ICP备06119539号
Copyright CiscoSky.Org,Some Rights Reserved.
Email:me1228#tom.com