2

我正在使用 IExpress 来组合我的引导程序和 msi 文件。它工作正常,除了如果我在没有任何先决条件(.net 4,sql ce)的机器上安装程序,它将失败。它总是在重新启动后失败,这发生在安装 .net 4 框架之后。在它指向我的错误日志中,它给出了一条消息

错误:无法找到应用程序文件

安装失败后重新启动安装可以正确安装,但这不是该项目可接受的解决方案。有人对如何解决这个问题有任何想法吗?让我知道是否需要解释其他任何内容。谢谢。

4

1 回答 1

1

斯蒂芬是对的;一旦 IExpress SFX 终止,它就会删除它用于提取的临时目录(类似于 的内容%temp%\IXP000.TMP)。因此,重新启动后,您的 MSI 就消失了。

要保留安装程序文件,您需要先将所有内容复制到不同的目录。您可以启动一个批处理文件(例如,将安装程序命令设置为类似cmd /c persist.bat)。然后persist.bat看起来像:

@echo off
xcopy /y * "%temp%\myproject\"
msiexec /q /i "%temp%\myproject\install.msi" /l*v "%temp%\myproject_install.log"
于 2012-12-04T22:16:45.390 回答