locked
求助:windows xp embedded sp2 FP2007 安装出错,为什么? RRS feed

  • 问题

  • 我安装了xpe sp1,xpe sp2, xpe studio 安装在c盘下,Windows Embedded Data在D盘,现在我在安装XPE SP2 FP2007时出错:The upgrade patch cannot be installed by  the windows installer service because the program to be upgraded may be missing,or the upgrade patch may upgrade a different version of the program.Verify that the program to be upgraded exits on your computer and that you have the correct upgrade patch.请问这是什么原因,谢谢!

    2008年7月24日 9:48

答案

  • 呵呵,试用版我不知道行不行,但是正式版我测试过了,正确的安装了SP1, SP2以后,是可以正常安装XPE SP2 FP2007的,你可以换成正式版试试。

     

    另外,从你的提示信息上来看,很可能是你以前安装的XPE开发工具损坏,尤其是安装信息不完整,建议你最好的解决办法就是重新安装一遍XPE。

    2008年7月25日 6:35
    版主
  • D盘中可以删掉boot.ini文件,因为系统启动的时候总是从C盘查找boot.ini文件的。

     

    你的问题首先要确定你的XPE在目标设计器中的ARC路径是正确的,如果你部署你的XPE到D盘,那么目标设计器中的设置应该如下:

     

     

    其次,在C盘的boot.ini文件中把multi(0)disk(0)rdisk(0)partition(2)\WINDOWS="Microsoft Windows XP Embedded" /fastdetect换成

    multi(0)disk(0)rdisk(0)partition(0)\WINDOWS="Microsoft Windows XP Embedded" /fastdetect

    multi(0)disk(0)rdisk(0)partition(3)\WINDOWS="Microsoft Windows XP Embedded" /fastdetect

    multi(0)disk(0)rdisk(0)partition(4)\WINDOWS="Microsoft Windows XP Embedded" /fastdetect

    再检查试试,那个正确就用哪个。

    如果还不行的话,建议你重新分区,激活,格式化你的目标盘。

     

    2008年7月31日 6:39
    版主

全部回复

  • 怎么没有人说话阿?在装XPE SP2 FP2007 之前还要装什么?

    2008年7月25日 2:31
  • 你首先需要安装SP1,SP2 (包括组建库和开发工具)。然后就应该可以安装FP2007。

    你能不能告诉我你已经安装了哪些,是试用版还是正式版?

    2008年7月25日 6:00
  • 谢谢您的回答,我已经安装了sp1,sp2 ,并且安装成功了(组件库和开发工具都已经使用过,一切正常),安装的是试用版,是在网上下载的。

    2008年7月25日 6:04
  • 呵呵,试用版我不知道行不行,但是正式版我测试过了,正确的安装了SP1, SP2以后,是可以正常安装XPE SP2 FP2007的,你可以换成正式版试试。

     

    另外,从你的提示信息上来看,很可能是你以前安装的XPE开发工具损坏,尤其是安装信息不完整,建议你最好的解决办法就是重新安装一遍XPE。

    2008年7月25日 6:35
    版主
  •  

    我将xpe 开发工具全部卸载重新安装,现在问题已经解决了,谢谢!!
    2008年7月25日 8:27
  •  

    雷老师,还有一个问题要向您请教,我装好UpdateRollup1_0XPe 之后打开 Target Designer 想添加组件,发现添加进去的组件都是灰色的(没有重复),这要怎么办啊?上一次也出现了这个问题,我把工具重装了,可是这一次才刚刚装上呢。还有:在组件中找不到下面这些组件:

    C Runtime Library (4.0.1183.1)

    Visual C++ Runtime Libraries (Side X Side)

    Visual C++ Runtime Libraries XPSP2

    Microsoft Foundation Class Library (MFC)

    Microsoft Visual C++ Run Time

    Microsoft Visual C++ Run Time (Legacy)

    这是什么原因?
    2008年7月25日 8:51
  • 组件是灰色的,一般就是三种情况导致的:

     

    第一,你的组件添加重复了,但是你说你没有添加重复的组件,所以这种可能性排除了;

     

    弟二,在你的组件数据库中可以找到相关的组件纪录,但是在实际的组件文件夹下(Repositories)找不到对应的组件文件,你可以看一下这个组件的尺寸,如果组件中有文件,但是尺寸是0KB,则说明是这个问题。你需要看看你的组件文件夹是否能够正常访问(在运行中输入\\主机名\Repositories),同时看看你的组件对应的文件在组件文件夹对应的目录霞是否能够找到。你可以编译一下你的工程,看看编译信息,里面会有组件对应的文件路径。

     

    第三,你使用了不同版本的开发工具打开了不同版本的工程,这样也会导致组件是灰色的。例如,你的工程是SP1做好的,但是你使用了SP2版本的开发工具打开了,就会出现这样的问题。如果是这样,那就只有在SP2下重新做一遍你的工程了。
    2008年7月25日 9:18
    版主
  • 雷老师,您好。上面那个问题可能是您说的第三种情况,重新做工程就可以了。但是在FP2007下新做工程的过程中遇见了一个奇怪的问题:我使用的是自定义shell,工程中只添加了ewf,网络,安装应用程序的相关组件,FBA 之后重启,电脑一直黑屏,由于自定义SHELL是在SP2的版本下做的,我怀疑是版本不兼容,所以重启机器,在现在的版本下重新做了一个SHELL ,但结果却是不能进行FBA (一直黑屏,按CTRL+ALT+DEL可以重启),我将SHELL 改成EXPLORER SHELL 也还是不能进行FBA (还是黑屏),请问这是什么原因阿? 之前在老版本下没有出现过类是问题。

    2008年7月28日 7:55
  • 如果说你使用EXPLORER SHELL 也还是不能进行FBA ,那么就应该排除自定义壳的问题,你应该从以下几个方面检查你的XPE操作系统:

     

    1. 将你的目标磁盘重新分区,激活,格式化;

    2. 确认你的设备文件(device.pmq)也是在新版本的开发工具中重新生成的;

    3. 确认你的开发机器上没有安装两个版本的XPE开发工具;

    4. 确认你的目标机的硬件环境没有发生过变化,没有介入两个以上的存储设备,例如一个硬盘一个CF卡;

    5. 确认你的主要设备驱动在新的开发工具中是正确的;

    6. XPE镜像文件编译是正确的,0 error.

    7. 确认你的开发工具安装正确并且使用的是正式版。

    2008年7月29日 4:31
    版主
  • 上面您提到的7项中,只有第七条不符合,我用的是试用版。我将目标盘格式化后重启还是出现了同样的问题。

    我察看了一下D盘下的boot.int 文件,文件如下:

    [boot loader]
    timeout=0
    default=multi(0)disk(0)rdisk(0)partition(2)\WINDOWS
    [operating systems]
    multi(0)disk(0)rdisk(0)partition(2)\WINDOWS="Microsoft Windows XP Embedded" /fastdetect /noexecute=AlwaysOff
    所以我将c盘下的boot.int 文件改为:

    [boot loader]
    timeout=30
    default=multi(0)disk(0)rdisk(0)partition(1)\WINDOWS
    [operating systems]
    multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /noexecute=optin /fastdetect
    multi(0)disk(0)rdisk(0)partition(2)\WINDOWS="Microsoft Windows XP Embedded" /noexecute=AlwaysOff/fastdetect

    重启,出错,提示缺少hal.dll或者该文件不正确。以前在老版本下也出现过这个问题,当时将所有文件放在根目录下,并将根目录下不相干的文件全部删掉解决了问题,这次我按老方法却没有解决,请问这有可能是什么问题?谢谢大家!!!

     

     

    2008年7月29日 5:52
  •  

    对于提示缺少hal.dll或者该文件不正确的问题,请参考以下文章:

    http://lzg-ad.blog.sohu.com/76238437.html

    2008年7月29日 7:26
    版主
  • 雷老师,我按照您博客商的文章试验,但是现在还是没有成功,一直提示缺少hal.dll文件,我c盘下的boot.int 文件如下:

    [boot loader]
    timeout=30
    default=multi(0)disk(0)rdisk(0)partition(1)\Windows
    [operating systems]
    multi(0)disk(0)rdisk(0)partition(1)\Windows="Microsoft Windows XP Professional" /fastdetect

    multi(0)disk(0)rdisk(0)partition(2)\WINDOWS="Microsoft Windows XP Embedded" /fastdetect


    D盘的boot.int文件如下:

    [boot loader]
    timeout=0
    default=multi(0)disk(0)rdisk(0)partition(2)\WINDOWS
    [operating systems]
    multi(0)disk(0)rdisk(0)partition(2)\WINDOWS="Microsoft Windows XP Embedded" /fastdetect

    在“BOOT.INI标签”中,点击“检查所有启动路径”按钮,检查的结果都是说xpe 系统无效,是否从.int文件中去掉。

    在xpe 中我只添加了几个核心组件:ntfs,ntfs format,Explore Shell,NT Loader,English Language Support.

    xpe的系统文件都放在d盘,请问我的ARC路径有什么问题吗?这是什么原因?谢谢!!

    2008年7月31日 6:01
  • D盘中可以删掉boot.ini文件,因为系统启动的时候总是从C盘查找boot.ini文件的。

     

    你的问题首先要确定你的XPE在目标设计器中的ARC路径是正确的,如果你部署你的XPE到D盘,那么目标设计器中的设置应该如下:

     

     

    其次,在C盘的boot.ini文件中把multi(0)disk(0)rdisk(0)partition(2)\WINDOWS="Microsoft Windows XP Embedded" /fastdetect换成

    multi(0)disk(0)rdisk(0)partition(0)\WINDOWS="Microsoft Windows XP Embedded" /fastdetect

    multi(0)disk(0)rdisk(0)partition(3)\WINDOWS="Microsoft Windows XP Embedded" /fastdetect

    multi(0)disk(0)rdisk(0)partition(4)\WINDOWS="Microsoft Windows XP Embedded" /fastdetect

    再检查试试,那个正确就用哪个。

    如果还不行的话,建议你重新分区,激活,格式化你的目标盘。

     

    2008年7月31日 6:39
    版主
  •  

    将ARC 改成:multi(0)disk(0)rdisk(0)partition(3)\WINDOWS="Microsoft Windows XP Embedded" /fastdetect
    是可以启动了,但是启动的时候显示的是“Microsoft Windows XP Professional" 而不是“Microsoft Windows XP Embedded“,这是为什么?这应该在什么地方修改?(boot.int 的ARC路径写的是Microsoft Windows XP Embedded)

    2008年7月31日 9:20