重启后IExpress找不到msi

发布于 2024-11-07 05:22:56 字数 277 浏览 0 评论 0原文

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

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

失败后重新启动安装可以正确安装,但这对于该项目来说不是可接受的解决方案。有人对如何解决这个问题有任何想法吗?如果我需要解释其他事情,请告诉我。谢谢。

I'm using IExpress to combine my bootstrapper and msi file. It works fine except that if I install the program on a machine without any of the prerequisites (.net 4, sql ce), it will fail. It always fails after rebooting, which happens after installing the .net 4 framework. In the error log that it points me to, it gives a message along the lines of

Error: Unable to locate application
file

Restarting the installation after it fails installs it correctly, but this isn't an acceptable solution for this project. Anyone have any ideas about how to fix this? Let me know if I need to explain anything else. Thanks.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

大海や 2024-11-14 05:22:56

斯蒂芬是对的;一旦 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"

Stephen's right; as soon as the IExpress SFX terminates, it deletes the temporary directory it uses for extraction (something along the lines of %temp%\IXP000.TMP). So after the reboot, your MSI is gone.

To persist your installer files, you'd want to copy everything to a different directory first. You could launch a batch file (eg set the install program command to something like cmd /c persist.bat). Then persist.bat would look something like:

@echo off
xcopy /y * "%temp%\myproject\"
msiexec /q /i "%temp%\myproject\install.msi" /l*v "%temp%\myproject_install.log"
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文