码迷,mamicode.com
首页 > 其他好文 > 详细

Primitive: Cacls.exe组件未添加导致部分软件无法在XP Embedded上安装

时间:2016-05-14 00:44:28      阅读:167      评论:0      收藏:0      [点我收藏+]

标签:

编译好XP Embedded,在目标机上顺利通过了FBA、安装好驱动,却发现有一款软件(我的目标机唯一需要装的就是这个东西)一直无法安装,提示cacls失败。

估计是什么组件没添加吧,首先怀疑是Windows Installer的问题,检查后发现组件已添加,而且msi格式的安装包可以正常运行;这个软件的安装包是用Installshield制作的,怀疑是不是Installshield的什么运行库不对?在目标机上装了Installshield,结果还是不能装这款软件;反编译了这款软件的安装脚本setup.inx文件,也没能很快找出原因。

无奈之下,只有再试其他方法了:
1.用注册表监视工具(Sysinternals出品的Regmon.exe)看看当提示错误信息时,对注册表做了什么?可是也没发现什么异常。

2.用文件监视工具(Sysinternals出品的Filemon.exe)看看当提示错误信息时,对哪些文件做了什么?哈哈,终于被我找到了,Filemon.exe中提示调用Cacls.exe时,没有找到Cacls.exe文件,原来如此,赶紧从我的系统中找一个Cacls.exe复制到目标机的System32目录下,再装这款软件,果然一路Next,顺顺利利。

既然我的系统中有Cacls.exe,我想XP Embedded中肯定会有,Google后发现有个组件就叫做Primitive: Cacls.exe,可是在Target Designer中却没搜到,仔细看了Target Designer的设置,发现有个“Component Visibility”选项,将其值设置为100,再次打开Target Designer,一眼就看到Primitive: Cacls.exe,呵呵。

以上描述比较啰嗦,但提供了一个解决问题的方法,所以将此文放在这里,以说明遇到问题只要能去研究,结果很快就有了。

Primitive: Cacls.exe组件未添加导致部分软件无法在XP Embedded上安装

标签:

原文地址:http://www.cnblogs.com/dgx/p/5491512.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!