使用net平台开发,目前也只能使用C/C++ C#目前不能用于WINCE开发。主要就是MFC类库和C语言的底层系统的一些东西。嵌入式开发也分应用程序等2次开发,还有就是系统集成。WINCE还好点。要是LINUX全需要你自己去设计。
将WIN32应用程序移植到WINCE平台时通常遇到API不可用,这是因为WinCE仅实现了win32 API的一个子集。在移植的时候必需检查应用程序中的所有WIN32 API调用,包括函数、消息以及相关的数据结构,对不兼容的函数调用作一些修改或寻求可替代的函数。主要从以下几个方面入手:
1,有些WIN32提供的函数在WINCE函数库中完全不支持,其中一些在WINCE中有新的函数替代,例如,在WIN32界面编程中用到的MENU BAR和TOOL BAR相关的函数,在WINCE中将他们捆绑成COMMAND BAR,构键了一个新的API。还有一些不支持的函数就必需通过调用其他函数间接实现他们的功能。如C运行库中不存在内存分配函CALLOC,可以通过调用MALLOC,并显示初始化内存来实现。再如,可以用POLYLINE实现MOVETO和LINETO函数功能。
2,有些WIN32函数在WINCE中虽然支持但多了一些限制,如减少了参数个数或缩小了参数的可选范围。例如,创建窗口函数CREATEWINDOW和CREATEWINDOWEX在WINCE中是支持的,但可供选择的窗口类型有所减少。这一点也是在程序移植过程中应该注意的。
3,WINCE程序也可以用MFC开发,但是程序消息定义有所不同,他不完全支持以WM_和EM_开头的消息。例如,WINCE设备通常用输入笔替代鼠标,因而没有DOSKTOP PC中的鼠标右击动作,不支持WM_RBOTTONDOWN消息。同时WINCE自身又产生了一些新的消息。因为内存限制,该平台上的所有应用程序都运行在低内存状态下,他们必须具备和 *** 作系统协同管理内存的能力。当系统可用内存低于某个阀值时,WINCE系统会向正在运行的应用程序发送消息,使其关闭或释放暂时不用的内存。新增消息WM_HIBERNATE即完成此功能。
因此,在移植应用程序时首先要考察WINCE对WIN32 API的支持程度。可采用替换、修改现有API调用或增加新的API等方法来适应系统的要求。
一、打开wince模拟器
启动visual
studio
2008
在菜单栏里:工具->连接到设备,d出“连接到设备”这个界面,在“平台”下拉列表里面选择为“windows
ce”,之后在显示出来的列表中选择“pocket
pc
2003
se
仿真程序”,然后点击“连接”按钮。截图如下:
连接成功后,就d出了仿真模拟器的界面,界面完全就是一个掌上电脑,很不错哦!截图如下:
二、设置wince仿真模拟器的属性
如果想要上网,你一定要先装上virtual
pc
2007
setupexe,然后再重新连接模拟器。virtual
pc直接装完就ok了,无需对其进行任何设置。
1、设置共享文件夹
单击模拟器界面中的菜单栏:文件->配置,在“仿真程序属性”界面中,“常规”选项卡里面,选择你的“共享文件夹”的目录。然后确定即可,最后要插入底座才生效哦。截图如下:
2、设置网络
再提一下,先要装virtual
pc
2007。(好啰嗦……呵呵)
进入“仿真程序属性”界面的“网络”选项卡,勾上“启用ne2000
pcmcia网络适配器并绑定到”,下拉列表中选择“数据包计划程序微型端口”。确认即可,最后要插入底座才生效哦。当然,你还要在模拟器中设置网络连接的属性才能上网,一定要看完再 *** 作哦!
截图如下:
3、设置串口、耳机等
进入“仿真程序属性”界面的“外围设备”选项卡,勾上相应的选项即可。截图如下:
4、插入底座,使设置生效
在vs2008的菜单栏中,工具->设备仿真器管理,右击你目前正在用的“pocket
pc
2003
se
仿真程序”,选择“连接”,然后再次右击,选择“插入底座”,现在你的模拟器就可以使用你的电脑上的那些网络、串口、耳机等资源了。截图如下:
5、设置wince模拟器中的网络连接属性
在wince模拟器界面中,开始->设置,选择下面的“连接”选项卡,单机“网卡”,在“我的网卡连接到”选项卡中选择“默认internet设置”,并在其下的列表中选择“ne2000兼容ethernet驱动程序”,然后选择“使用服务器分配的ip地址”,单击右上角的ok。最后,打开模拟器里面的ie,点击一个天线状的图标,选择网卡连接到“默认internet设置”,然后你就可以上网了。
与开发Linux系统一样,你也是需要定制WinCE *** 作系统到ARM,只是有许多微软的程序可移植而已,而开发环境微软已经为你搭建好了,不象Linux开发那样可以自己定制开发环境。
基本上是根据样板的开发包修改成自己的开发包,在现有的样例程序、驱动上进行修改是通常做法和捷径。
WindowsMobile和WindowsCE是两回事,但是Mobile用的是CE内核,因此部分软件也可以不加修改便可在两个系统中通用,如果要开发WinCE应用程序,你需要安装WinCE50的SDK,如果目标系统是WinCE421的话,你可以去微软的网站上下载eVC40来进行开发,以下文字就不用再看了
WinCE50或更高版本SDK的来源有这么几种方式:
1通过PlatformBuilder50裁剪出自己所需要的WinCE50内核,然后再用PlatfromBuilder通过内核导出相应的SDK安装包,这个安装包就可以在电脑上使用了,这种方法主要是WinCE50的内核开发人员生成SDK开发包用的,一般而言WinCE应用软件的开发人员不需要使用PlatformBuilder。
2厂家提供,如果是基于其他厂家已有的WinCE设备进行开发,那么厂家会给你提供相应的SDK的
3上网下载别人已经生成好的SDK,如果只是为了学习WinCE的应用软件开发,并不涉及具体硬件,这个方法也可以
SDK安装好后,新建项目时就能选择WinCE项目了
以上就是关于C#/.NET嵌入式开发全部的内容,包括:C#/.NET嵌入式开发、win32与winCE有什么区别、如何往WinCE模拟器传文件等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)