在PB中修改了 platform.reg 文件,可无法更新到 Release 文件夹!

FU33   2009-5-9 12:11 楼主
Wince5.0

我在工程中修改了 platform.reg 文件,保存关闭;

然后执行 Copy Files to Release Directory

可是的的确确没有反应到 %_FLATRELEASEDIR% 文件夹中。


我查到 Buildrel.bat 命令会复制下面的文件:

%_PLATFORMROOT%\%_TGTPLAT%\Files

也检查了这些环境变量,都是正确的,如下:

E:\WINCE500\PLATFORM\SMDK2410\FILES

这个路径中的 platform.reg 文件已经是被修改过的,从修改时间可以看出来。



我不知道大家在修改了 platform.reg 文件后,再执行 Copy Files to Release Directory 后,

就会把这个修改后的文件复制到 %_FLATRELEASEDIR% 文件夹中,

你们是不是都可以的?

回复评论 (7)

要重新SYSGEN
点赞  2009-5-9 13:07
我的确是可以,如果你的不可以就手动拷贝吧。
点赞  2009-5-9 13:11
引用: 引用 2 楼 gooogleman 的回复:
我的确是可以,如果你的不可以就手动拷贝吧。



谷歌人:我这里确实不行,不过如1楼所说,Sysgen 就行了,但是时间太久了。
点赞  2009-5-9 13:15
何必sysgen呢?

楼主可以直接在文件夹下修改即可。

不行有可能你的一些BSP的 bat文件没有设置 。
点赞  2009-5-9 13:30
1. buildrel 会 copy %_PLATFORMROOT%\%_TGTPLAT%\Files, 也会 copy %_PLATFORMROOT%\%_TGTPLAT%\cesysgen\Files, 而且 %_PLATFORMROOT%\%_TGTPLAT%\cesysgen\Files 下的档案会盖掉 %_PLATFORMROOT%\%_TGTPLAT%\Files.

2. %_PLATFORMROOT%\%_TGTPLAT%\cesysgen\Files 下的档案, 是在 build phase 2 时 sysgen 你的 bsp 时从 %_PLATFORMROOT%\%_TGTPLAT%\Files 产生的, 故 1 楼的会说重新 sysgen 即可. 但这重新 sysgen 不是整个系统, 而是只要 sysgen bsp 即可, 在 wince 6.0 下只需 1-3 秒.

3. wince 5.0 下如何 sysgen bsp 我也不记得了, 应该是在 Platform Builder - Solution Explorer 选 bsp folder, 按右键选 sysgen, LZ 试出来後再告诉大家吧.

4. sysgen 完後, 好像还要 buildrel 再 makeimg, 才可得到正确的 nk.bin.

Paul, Chao @ Techware
点赞  2009-5-9 13:40
paul_chao 你好!也许你说的有道理!

但我也有个疑问:

PB5.0 帮助中写道:


Buildrel.bat copies files from the following directories:

%_PLATFORMROOT%\%_TGTPLAT%\Files
%_PLATFORMROOT%\%_TGTPLAT%\Target\%_TGTCPU%\%WINCEDEBUG%


而没有你提到的目录:

%_PLATFORMROOT%\%_TGTPLAT%\cesysgen\Files


但是,我的确发现 buildrel.bat 是从 %_PLATFORMROOT%\%_TGTPLAT%\cesysgen\Files 这个目录

复制文件到 %_FLATRELEASEDIR% 目录。

可是 buildrel.bat 的说明却没有提到这个目录,真是奇怪了!

=======


现在我知道的如下:

1、在 PB 工程中修改的 platform.reg 文件位于 %_PLATFORMROOT%\%_TGTPLAT%\Files

2、而 buildrel.bat 复制的文件却位于 %_PLATFORMROOT%\%_TGTPLAT%\cesysgen\Files

所以,只是执行 buildrel.bat 命令后,复制到 %_FLATRELEASEDIR% 目录的还是老文件。

我不知道执行什么命令,才能把修改后的文件复制到 %_PLATFORMROOT%\%_TGTPLAT%\cesysgen\Files

然后再执行 buildrel.bat 命令把 platform.reg 文件复制到 %_FLATRELEASEDIR% 目录

最后再执行 makeimg 生产映像。
点赞  2009-5-9 15:37
1. buildrel 就是只做 copy, 而且先 copy %_PLATFORMROOT%\%_TGTPLAT%\Files, 再 copy %_PLATFORMROOT%\%_TGTPLAT%\cesysgen\Files, 故对相同档名的档案 (for example: platform.reg), 後 copy 的 %_PLATFORMROOT%\%_TGTPLAT%\cesysgen\Files 下的档案会盖掉先 copy 的 %_PLATFORMROOT%\%_TGTPLAT%\Files.

2. %_PLATFORMROOT%\%_TGTPLAT%\cesysgen\Files 下的档案, 是在 build phase 2 时 sysgen 你的 bsp 时从 %_PLATFORMROOT%\%_TGTPLAT%\Files 产生的, 故 1 楼的会说重新 sysgen 即可. 但这重新 sysgen 不是整个系统, 而是只要 sysgen bsp 即可, 在 wince 6.0 下只需 1-3 秒.

3. wince 5.0 下如何 sysgen bsp 我也不记得了, 应该是在 Platform Builder - Solution Explorer 选 bsp folder, 按右键选 sysgen, LZ 试出来後再告诉大家吧.

4. sysgen 完後, 好像还要 buildrel 再 makeimg, 才可得到正确的 nk.bin.

5. 尽信书不若无书, 它的文件确实没提到, 但它的 buildrel.bat 却是这麽做.

Paul, Chao @ Techware

点赞  2009-5-9 15:58
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复