wince 随手记


WinCE 5.0或更高版本SDK的来源有这么几种方式:1.通过Platform Builder 5.0 裁剪出自己所需要的WinCE 5.0内核,然后再用Platfrom Builder通过内核导出相应的SDK安装包,这个安装包就可以在电脑上使用了,这种方法主要是WinCE 5.0的内核开发人员生成SDK开发包用的,一般而言WinCE应用软件的开发人员不需要使用Platform Builder。2.厂家提供,如果是基于其他厂家已有的WinCE设备进行开发,那么厂家会给你提供相应的SDK的3.上网下载别人已经生成好的SDK,如果只是为了学习WinCE的应用软件开发,并不涉及具体硬件,这个方法也可以SDK安装好后,新建项目时就能选择WinCE项目了
 
======================下面是装EVC4.0时候遇到的问题===================================
 
 
EVC4.0下,利用新建向导创建了一个MFC单文档应用程序
,编译没有任何问题,却在执行时报错了,信息如下   
"An   application   targeting   a   Standard   SDK   
for   Windows   CE.NET   and   built   for   the   X86  
 cannot   be   run   on   the   Emulator   device.  
 In   order   to   run   this   application   on   any  
 CPU   other   than   the   Emulator,   you   will  
 have   to   install   a   SDK   that   is   compatible 
  with   the   Standard   SDK   for   Windows   CE.NET, 
  then   target   a   shadow   platform   pertaining  
 to   that   SDK.   Please   see   the   eVC   help  
 documentation   fo   additional   details." 
说是应该安装合适的SDK,由于我这个程序最终是要在WINCE CE.NET
4.2下运行的。板子是S3C2410的标准板。这个SDK,应该是利用
Platform Builder工具生成操作系统映像时导出的SDK,留给
应用程序使用。找到了这个SDK,并安装完毕。编译,还是这个错误。
最后选择Win32   (WCE   emulatot)   Debug ,问题解决。
原来它是在连接EVC集成的模拟器工具时出错了。而我之前选择的
是Win32   (WCE ARMV4I)   Debug。问题出在这。记录在此,方便
日后查阅。



当模拟器在启动时,会出现一个标题为“Emulator for Windows CE”的消息框,消息文本为“One or more files from the Emulator for Windows CE installation is missing.Please reinstall Emulator for Windows CE and try again.” 出现这个消息框之后,连接或部署到模拟器会失败

打开设备管理器,并且在系统设备中找到了“Virtual PC Application Services”,结果如图所示

 

解决方法是:在“运行”里输入“sysdm.cpl”。其实就是系统属性啊。当然你如果有别的方法也可以,我这里是按照微软网站里的步骤写的。 点击“高级”下的“启动和故障恢复”选项的“设置” 在弹出的对话框里点击“编辑”其实就是调出了“boot.ini”,如果有别的方法进入boot.ini也可以。关键下一步,把里面的“/nonexecute”改成“/execute”。保存。重启。然后SDK就可以用了。

最后BOOT 文件大致如: multi(0)disk(0)rdisk(0)partition(1)/WINDOWS="Windows Server 2003, Enterprise" /execute /fastdetect ,这个文件修改一定要注意,不然系统就起不来了


然后,就出现了:


然后打开我的电脑,就发现了自己写的 程序:

点击运行:


code:
#include <windows.h>
// Program entry point

int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance, LPWSTR lpCmdLine, int nShowCmd)
{
	MessageBox(NULL, TEXT("Hello World!"), TEXT("hello"), MB_OK);
	return 0;
}





终于弄完这个了,继续。。。。。。

后来写了一个测试的程序:
#include <windows.h>
#include"cv.h"
#include"highgui.h"
#include"cxcore.h"
  
int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance, LPWSTR lpCmdLine, int nShowCmd)  
{  
	IplImage *img = cvCreateImage( cvSize(100, 100), 8, 1 );
	//IplImage *img = cvLoadImage("c:\\1.bmp", 1);
	CvPoint p1 = cvPoint(10, 10);
	CvPoint p2 = cvPoint(50, 50);
	cvLine(img, p1, p2, CV_RGB(255,0,0));
	if(img != NULL)
		MessageBox(NULL, TEXT("This is a demo!"), TEXT("success!"), MB_OK);  
	cvReleaseImage(&img);
 
    return 0; 
}  

然后把裁剪好的dll和这个程序生成的exe放在wince下运行,成功了!额,也是终结了,之后就没怎么弄。。。。因为highgui 这个库确实没有参考的资料来裁剪。。。。另一个原因是 wince跑opencv据说很慢。。。。。还是arm+DSP 比较靠谱。。。。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值