淘宝店 饰品 *木雕系列*:檀木、黄杨木、桃木发簪 樟木壁挂 佛珠
http://shop36570193.taobao.com
朋友,有空来看看,喜欢的朋友请收藏
要编写和系统底层有关的程序,就必须先了解Windows CE的特征,建议你先学习《Windows 核心编程》,然后再看看Windows CE的帮助文档,了解CE的操作系统特征。为什么这么建议呢,如果不熟悉Windows 核心编程的知识,而直接看Windows CE的英文帮助相关部分,那很难能看懂。
如果你要问我从哪能弄到EVC,这我无法告诉你,我用的是公司买的,EVC+PB(platform builder)一套要N万元。Windows CE的开发模式一般是在PC下编程,然后通过网卡或串口下载到实际的硬件平台上调试。但EVC提供了一个模拟器,这样就可以不用将编译完的程序下载到实际平台上调试。即使这样也不要高兴太早,模拟器只能调试最简单的程序。稍复杂的程序,尤其是操作硬件的程序就必须下载到实际硬件平台上调试。
在PC下安装EVC4.0和安装普通的软件一样,按照安装向导提示,先安装platform manager(平台管理器,必须使用这个工具),再安装EVC(IDE部分),接着安装standard SDK(模拟器使用的SDK),最后安装SP(service pack)。我每次都是先安装PB(platform builder),再安装EVC(注意:安装PB不是必要的)。
整个安装过程中必须注意的事项:A、不要改动PB和EVC默认的安装路径。因为改变了默认安装路径,即使安装向导提示安装成功,也不能保证你能够成功启动PB或EVC。启动PB或EVC时会提示你某个组件没安装,但实际上已经安装了。B、在安装向导向你询问选择哪些CPU时,只选择x86和emulator。C、EVC4.0自带了SP1,现在有SP2(微软网站提供免费下载),如果想安装SP2,在安装开始时就不要选择安装SP1,安装完毕后,自行安装SP2。 D、PC操作系统可以是windows 2000、windows xp、windows 2003。E、无论出于什么原因,如果你第一次安装EVC失败了,那么以后再安装也很难成功,因为EVC的卸载也不是很干净,很多注册信息仍留在注册表中。我的解决办法是重装操作系统,当然,克隆会更快。祝愿你一次安装成功。
"C:/Windows CE Tools/eVC4/Htmlhelp/emtools/evc4help.chm"。这个目录帮助文件很多,这个是主要的文件,它可以链接到其它帮助文件。另外在开发前还要注意一些事项。A、Windows CE中预定义了_UNICODE宏,所以CString 类的字符都是unicode码,在将字符串赋值给CString对象前一定要加上 _T() 或 TEXT() 宏,这两个宏在预定义了_UNICODE情况下,将字符串每个字符转变成宽字符。也可以在字符串前面加“L”将每个字符转变成宽字符。B、安装的standard SDK内容较少,所以如果在编译程序时出现错误,比如链接错误,别忘了出错原因可能是编码的错,也可能是SDK不支持。要全部的支持就必须安装PB。C、默认情况下模拟器不支持中文,所以中文显示为乱码。D、使用开发向导,比如“WCE MFC AppWizard”时,在选择资源对应的语言时,并没有中文,所以你必须在应用程序向导生成工程文件后,手工去更改资源的对应语言,要显示中文,这一步必须做。
注:我记得在网上看到过模拟器支持中文方法。你可以到一些嵌入式开发网站寻找。
3、编写、调试程序
使用应用程序向导(AppWizard)生成框架,然后编码。或者不使用向导直接编码,在这里我就不多说了,和在VC下操作一样。我在这里只说一下调试方法。
假设编写好了代码,先要在“WCE configuration”工具栏上的第三个下拉框中选择“Win32 [WCE emulator] Debug”(如果代码没问题,选择Win32 [WCE emulator] Release)。接着单击“WCE configuration”工具栏上的执行或调试按钮。这时会显示一个进度条,说明模拟器正在启动,并加载要调试的程序,直到Windows CE桌面和应用程序界面显示出来。在模拟器中可以直接用鼠标和键盘操作。在下次调试前,一定要先关闭正调试的应用程序,否则模拟器提示出错。
注:模拟器安装成功,在“本地连接”的属性对话框中,会多出一项:“virtual PC Emulated Ethernet Switch”。
1、原因:EVC要使用Unnicode,而VC6通常使用的是Ansi(当然使用Unicode会更好)。这主要是因为EVC对应的 是WinCE或Poket PC而开发,VC6对应Win98/95或以上系统。
2、使用:在定义字符或字符串时要用wchar_t,TCHAR等,使用时记得使用_T(""),不然就会出错的了。还要注意一字函数的变化,如下表(还有哦):
NOT UNICODE
TCHAR
UNICODE
atof
_tstof
_wtof
atoi
_tstoi
_wtoi
_atoi64
_tstoi64
_wtoi64
atol
_tstol
_wtol
atoi
_ttoi
_wtoi
sprintf
_ttoi64
swprintf
二、EVC不支持绝对路径,比如:"C://"这种是不支持的,所以不支持GetCurrentDirectory()函数。但支持相对路径和网络路径。你可以这样写:"//myWinCE/Share/data.txt"。如果是网络路径则在前面加上"/network",如:"/network/WinCE/Share/data.txt"。