微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 基于WINCE.NET4.2系统的PDA使用PPC2003软件全攻略

基于WINCE.NET4.2系统的PDA使用PPC2003软件全攻略

时间:02-24 来源:互联网 点击:

PPC2003是基于WINCE.NET4.x的一个高度定制化版本,
WINCE3.0以后的版本因为使用了.NET FRAMEWORK所以统称为WINCE.NET4.X,也就是说WINCE.NET4.2跟PPC2003的底层是高度兼容的,PPC2003只是增加了一些比较特殊的组件。

那么思路就有了,只要找到这些组件(一般是DLL文件),把它们拷贝到系统里就可以了。

接下来就按照这个思路去研究:
但是找DLL文件比较麻烦,我开始是使用EVC 的进程查看器来查询某个软件会调用哪些DLL文件,但是多数PPC2003的软件运行找不到所需组件就会自动终止进程,没办法查看,看来此路不通,自己编个程序吧,又比较花时间(因为我以前没写过PDA的程序,光是查资料就需要很长时间,再加上更费时间的调试就更不现实了),好在HI-PDA上有很多高手,我在以前的文章里找到一个可以查看运行程序所需DLL的软件,参考了这个帖子:


OK,这个问题也解决了,只要确定出需要的DLL文件来,然后从其他PPC2003的系统里把需要的DLL文件拷贝过来就可以了。

以上就是我的基本解决思路,下面是详细的过程:
一、需要准备的软件
1、EVC 4.0,
这个很重要,EVC的环境里提供了一些有用的工具,比如说截图程序,进程查看器(这个最重要,可以在PC端终止一些意外的程序,让你在试验的时候减少RESET的次数)等等,另外有了这个环境你也可以自己编译一些简单的程序,增加对PDA系统的了解;

2、ULTRAEDIT,
这个是用来修改软件的东东,也比较重要

3、ROMDump(PDA上运行)和dumprom(PC上运行)--注意区别
ROMdump用来把PDA上的ROM抓取出来(主要是为了提取其中的DLL文件,因为无法直接从/windows目录下拷贝),抓出来的ROM是一个BIN文件,dumprom用来解开抓取出来的ROM文件,得到最终的DLL文件,我们起码需要两个ROM文件,一个是我们自己WINCE.NET4.2系统的ROM文件,用来备份,另一个是一个基于PPC2003系统的PDA的ROM文件,用来提供我们的WINCE.NET4.2缺少的DLL文件;

4、相关的DLL集合,
包括doclist.dll,mfcce300.dll,noteprj.dll,olece300.dll(前四个是支持HPC运行PPC软件的DLL),gapinet.dll,gx.dll(这个比较重要,用来支持一些图形函数),cecore.dll,sdl.dll(这个类似于DIRECTX),aygshell.dll(这个文件WINCE.NET4.2也有,不过版本不同,不建议替换),kctrl.dll(这个好象是用来支持日文的),vbscript.dll,这些都DLL比较重要,有些软件只要把它们拷贝到系统里就可以运行了

5、ExecutabilityCheck(PDA上运行),
这个软件是用来检查某个软件需要哪些DLL文件

二、基本操作流程:
1、把一中提到的相关DLL文件拷贝到你的PDA上的/windows目录下,有些软件就可以运行了;

2、有些需要安装的软件在安装时会弹出窗口提示:无法安装,这时需要修改CAB文件,运行ULTRAEDIT打开安装的CAB文件查找第一个“110A”,找到后用“2007”替换,这样就可以安装了,是参考这篇帖子

3、有很多软件没有单独的安装CAB文件,可以参照HI-PDA里的这篇帖子


找到它的CAB文件,然后再按照第2步的做法去修改,这样处理以后大多数的PPC2003软件都可以安装在WINCE.NET4.2里了,需要注意的是有些软件安装会在自己的目录里拷贝一个低版本的gx.dll(大小为8.5k),这样会导致PDA的/windows下的gx.dll(大小为11k)不被调用,有时会引起花屏,解决的办法是把你的PDA里的/program files/xxx目录下(xxx是你安装的软件)的gx.dll删除;

4、很多软件经过以上的步骤就可以运行了,剩下不能运行的一般会提示:找不到组件,这时ExecutabilityCheck就出场了,先把它拷贝到你的PDA上,然后通过它来调用你要运行的软件,它会告诉你这个软件在调用哪些DLL时没有找到,记下这些DLL文件的名字,按图索骥把它们拷贝到你的PDA里,一般就可以了;

5、用步骤一里提到的ROMDump(PDA上运行)和dumprom(PC上运行)取得你需要的DLL文件,ROMDump使用很简单,直接拷贝到你的PDA上,然后在控制面板里调整一下存储空间,空出32M来,直接运行就可以了,我有一篇帖子


讲过这个软件的用法,建议大家下载那个我编译过的32M版本的,关于如何使用dumprom,HI-PDA里有文章说得很详细,可以参考


不过那篇文章给出的dumprom在我的PC上老是非法操作,我从其他地方下载了一个,附在这篇帖子后面。

6、大多数的PPC2003软件经过这么处理应该可以在你的WINCE.NET4.X上运行了,接下来的步骤三讨论一下不能运行的那些软件

三、其他的例外
通过以上的处理,相信大多数的PPC2003的软件都可以搞定了,其余还不能运行的一般有是这样的情况(仅仅是分析):
软件调用同名的DLL文件,但是这些DLL的版本不同,而且无法替换,因为你的

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top