关于wince应用程序打包到操作系统中出现的问题

suaimei   2009-12-29 10:29 楼主
问题:
      现在做毕业设计,从师兄手中拿到配置好的NK.nb0;烧到板子上,在/我的设备/Windows目录下,有几个配置好的应用程序(师兄配置好的应用程序打包到wince);
      现在我准备将另外的应用程序打包到wince操作系统中,操作如下:
      (1),应用platform builder ,更改注册表project.bib文件。 在FILES后边添加:
        MY.exe          $(_FLATRELEASEDIR)\MY.exe  NK
      (2),将MY.exe文件拷贝到Release目录下
      (3),点make run-time image
      (4),将NK.nb0烧写到板子中,启动仍然是原先状态,MY.exe没有出现在/我的设备/Windows目录下
     请问这是什么原因呢?哪个步骤不正确。
       我还尝试过将注册表project.bib文件中的应用程序都删除(包括师兄留下的应用程序)然后点make run-time image
仍然是跟原来一样的情况;
       我还尝试过用build and sysgen,然后点make run-time image,烧写板子;结果仍然一样。
     请大家帮个忙?不胜感激!

回复评论 (16)

看build信息,是否有错误出现
点赞  2009-12-29 10:39
一般情况下,是你修改了错误的地方

你修改的不是原始的,而是编译过程中生成的文件,重新make后你的修改已经不存在了。
点赞  2009-12-29 10:40
project.bib文件改了后,想生成新的NK.bin。
一是:先sysgen一下,再make run-time image。(当然sysgen时间会很长)
或者:用新的project.bib文件替换Release目录下的project.bib文件,再make run-time image。
点赞  2009-12-29 10:52
修改完project.bib之后要手动复制到release目录下,或者执行一次copy files to release directory。
你的问题可能是修改后release目录下的文件没更新
点赞  2009-12-29 11:47
引用: 引用 4 楼 veabol 的回复:
修改完project.bib之后要手动复制到release目录下,或者执行一次copy files to release directory。
你的问题可能是修改后release目录下的文件没更新

首先谢谢您,
我在project.bib中加ARMV4_FTPServer.exe $(_FLATRELEASEDIR)\ARMV4_FTPServer.exe  NK
之后执行copy files to release directory
在Release下没有发现ARMV4_FTPServer.exe
执行make run-time image,出现错误:
Error: Could not find file 'D:\WINCE500\PBWorkspaces\zxz\RelDir\Z228_ARMV4I_Release\ARMV4_FTPServer.exe' on disk

我手动将ARMV4_FTPServer.exe 拷贝到Release下,执行make run-time image
将生成的NK.nb0烧入板子还是原来一样,
点赞  2009-12-29 12:30
想ARMV4_FTPServer.exe 自动 copy过去就要把它放到BSP的files目录下。
没有加到NK的话你看下'D:\WINCE500\PBWorkspaces\zxz\RelDir\Z228_ARMV4I_Release目录下的project.bib是不是改过的.
另外,不清楚是否要在project.bib文件中加上一句MODULES
点赞  2009-12-29 12:37
引用: 引用 1 楼 91program 的回复:
看build信息,是否有错误出现

谢谢您,
我做了这几次试验,
一、
编译clean before building ,copy files to release directory after build,make run-time image after build 这几项是默认打钩的;
(1)、将注册表project.bib添加:
ARMV4_FTPServer.exe $(_FLATRELEASEDIR)\ARMV4_FTPServer.exe  NK
(2)、 ARMV4_FTPServer.exe  拷贝到Release下
(3)sysgen and build
出现错误;
Error: Could not find file 'D:\WINCE500\PBWorkspaces\zxz\RelDir\Z228_ARMV4I_Release\ARMV4_FTPServer.exe' on disk
还有找不到原先打包的应用程序,
我将所有需要的应用程序拷贝到Release下,执行make run-time image
将NK.nb0烧入板子跟原来一样;
二、
(1)我将make run-time image after build 这项是默认去掉
(2)将注册表project.bib应用程序部分所有都删除
(3)sysgen and build
没有错误,
(4)修改注册表project.bib,如以往那样添加
(5)手动将.exe文件拷贝到Release下,
(6)make run-time image
没有错误
将NK.nb0烧入板子跟原来一样;
点赞  2009-12-29 12:43
引用: 引用 3 楼 feihu521a 的回复:
project.bib文件改了后,想生成新的NK.bin。
一是:先sysgen一下,再make run-time image。(当然sysgen时间会很长)
或者:用新的project.bib文件替换Release目录下的project.bib文件,再make run-time image。

我试试看
点赞  2009-12-29 12:46
引用: 引用 6 楼 veabol 的回复:
想ARMV4_FTPServer.exe 自动 copy过去就要把它放到BSP的files目录下。
没有加到NK的话你看下'D:\WINCE500\PBWorkspaces\zxz\RelDir\Z228_ARMV4I_Release目录下的project.bib是不是改过的.
另外,不清楚是否要在project.bib文件中加上一句MODULES

project.bib文件已经有MODULES
我试试看自动拷贝
点赞  2009-12-29 12:49
make run time image之后你看下那个目录里的ce.bib里边有没有ARMV4_FTPServer.exe 的内容,ce.bib是把多个bib文件合并的,其中包含project.bib
点赞  2009-12-29 13:21
你修改的文件是哪个目录下的?
点赞  2009-12-29 13:28
引用: 引用 11 楼 yashi 的回复:
你修改的文件是哪个目录下的?

D:\WINCE500\PBWorkspaces\zxz\RelDir\Z228_ARMV4I_Release这个目录下的project.bib
点赞  2009-12-29 13:37
是在Windows目录下的,
你可以把目标文件放在WINCEROOT下,然后Project添加:
OnLine.exe $(_WINCEROOT)\OnLine.exe NK
这样试试。
点赞  2009-12-29 14:28
一直都是改的files目录下的platform.bib文件,不知道多个project.bib的映射关系导致最终哪个有效。
你可以在PB界面open release directory使用命令viewbin -t nk.bin来查看一下你的NK.BIN中到底包含一些什么东西。如果用命令栏看着不方便就输出到文件里里边,具体可以查找viewbin的用法。
点赞  2009-12-29 14:41
你的project.bib路径错了吧,应该是WINCE500\PBWorkspaces\zxz\FILTER\目录下的吧,一般来说,改完后,直接把你的exe文件放同目录下就可以,make的时候系统会拷过去的。
点赞  2009-12-29 16:02
谢谢各位了,问题解决了;
问题是我自己搞错了,以前将NK.nb0烧入到内存中应用tftp服务,而我的E盘下,有两个tftp服务的文件夹,我用错了文件夹,里边的tftpServer.exe的根目录是另一个文件夹的。而我又没有改变NK.nb0文件的名字。每次烧写的都是原先的NK.nb0。我是通过改变了这个镜像的名字才发现找不到。
让大家白费劲了,不过自己通过以上帖子学到了很多东东,谢谢!
点赞  2009-12-29 22:11
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复