Wix 自定义操作序列

Wix Custom Action Sequence(Wix 自定义操作序列)
本文介绍了Wix 自定义操作序列的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我已尝试安装我的软件,该软件有一些先决条件.我为他们制作了一个 Bootstrapper wix,并尝试在 Main Wix 安装程序中单独运行它们似乎工作正常.当我尝试在我的 Wix 安装程序中附加从 Bootstrapper 获得的这个 EXE 时,我开始出现故障.先决条件引导程序具有.Net 和 MS C++,问题似乎是当我的 Wix 安装程序调用先决条件并且恰好在 C++ 安装时它会中断.但是,如果我尝试单独安装 Prerequisites EXE,它可以正常工作.在这两种情况下,我都尝试将其称为文件和二进制文件,但都失败了.我是这样称呼它的:

I have tried to make installation to my software, and this Software has some prerequisites. I made a Bootstrapper wix for them and trying to run them alone not in the Main Wix installer seems to work fine. The moment I tried to attach this EXE that I got from the Bootstrapper in my Wix Installer I start to get failures. The Prerequisites Bootstrapper has.Net and MS C++ and the problem seem to be when my Wix installer calls the Prerequisites and exactly at C++ installation it breaks. But if I tried to install the Prerequisites EXE alone it works fine. I tried to call it as a file and as a binary in both cases I fail. Here is how i called it :

<!--  <Binary Id="SQl_Insta.exe" SourceFile="PrerequisitesinDebugPrerequisites.exe"/>
-->
<Property Id="prerequisites_insta" Value="command line to run"/>
<CustomAction Id="prerequisites_insta" FileKey="prerequist_ID" ExeCommand="-install"
  Impersonate="yes" Return="check" />

<!--
<CustomAction Id="prerequisites_insta" Directory="Setup"
  Execute="deferred" Impersonate="no" Return="ignore"
ExeCommand="[Setup]Prerequisites.exe -install" />-->

我想要的顺序是在将文件复制到程序文件后安装它们

and the sequence that I want is to install them after copying files to Program files

<InstallExecuteSequence>

<Custom Action="prerequisites_insta"  Before="InstallFiles">Not Installed</Custom>

</InstallExecuteSequence>

错误:

[18F0:04C0][2018-03-13T14:01:04]w348:应用程序请求重试包:vcredist_x64.exe,遇到错误:0x80070652.正在重试...[173C:176C][2018-03-13T14:01:07]i301:应用执行包:vcredist_x64.exe,操作:安装,路径:C:ProgramDataPackage缓存13674C43652B941DAFD2049989AFCE63CB7C517Bvcredist_x64.exe,参数:'"C:ProgramDataPackage缓存13674C43652B941DAFD2049989AFCE63CB7C517Bvcredist_x64.exe"/qb/norestart' [173C:176C][2018-03-13T14:01:11]e000:错误 0x80070652:进程返回错误:0x652 [173C:176C][2018-03-13T14:01:11]e000:错误 0x80070652:无法执行 EXE 包.[18F0:04C0][2018-03-13T14:01:11]e000:错误 0x80070652:未能配置每台机器的 EXE 包.[18F0:04C0][2018-03-13T14:01:11]w348:应用程序请求重试包:vcredist_x64.exe,遇到错误:0x80070652.正在重试...[173C:176C][2018-03-13T14:01:14]i301:应用执行包:vcredist_x64.exe,操作:安装,路径:C:ProgramDataPackage缓存13674C43652B941DAFD2049989AFCE63CB7C517Bvcredist_x64.exe,参数:'"C:ProgramDataPackage缓存13674C43652B941DAFD2049989AFCE63CB7C517Bvcredist_x64.exe"/qb/norestart' [173C:176C][2018-03-13T14:01:17]e000:错误 0x80070652:进程返回错误:0x652 [173C:176C][2018-03-13T14:01:17]e000:错误 0x80070652:无法执行 EXE 包.[18F0:04C0][2018-03-13T14:01:17]e000:错误 0x80070652:未能配置每台机器的 EXE 包.[18F0:04C0][2018-03-13T14:01:17]w348:应用程序请求重试包:vcredist_x64.exe,遇到错误:0x80070652.正在重试...[173C:176C][2018-03-13T14:01:20]i301:应用执行包:vcredist_x64.exe,操作:安装,路径:C:ProgramDataPackage缓存13674C43652B941DAFD2049989AFCE63CB7C517Bvcredist_x64.exe,参数:'"C:ProgramDataPackage
缓存13674C43652B941DAFD2049989AFCE63CB7C517Bvcredist_x64.exe"/qb/norestart' [173C:176C][2018-03-13T14:01:24]e000:错误 0x80070652:进程返回错误:0x652 [173C:176C][2018-03-13T14:01:24]e000:错误 0x80070652:无法执行 EXE 包.[18F0:04C0][2018-03-13T14:01:24]e000:错误 0x80070652:未能配置每台机器的 EXE 包.[18F0:04C0][2018-03-13T14:01:24]i319:应用执行包:vcredist_x64.exe,结果:0x80070652,重启:无[18F0:04C0][2018-03-13T14:01:24]e000:错误 0x80070652:未能执行EXE包.[173C:176C][2018-03-13T14:01:24]i351:删除缓存包:vcredist_x64.exe,来自路径:C:ProgramDataPackage缓存13674C43652B941DAFD2049989AFCE63CB7C517B[173C:176C][2018-03-13T14:01:24]i351:删除缓存包:NDP452_KB2901907_x86_x64_AllOS_ENU.exe,来自路径:C:ProgramDataPackage缓存89F86F9522DC7A8A965FACCE839ABB790A285A63[173C:176C][2018-03-13T14:01:24]i351:删除缓存包:dotnetfx35.exe,来自路径:C:ProgramDataPackage缓存3DCE66BAE0DD71284AC7A971BAED07030A186918
[173C:176C][2018-03-13T14:01:24]i372:会话结束,注册密钥:SOFTWAREMicrosoftWindowsCurrentVersionUninstall{a94dd5f5-3343-45c7-ab0b-17c3ba9e8644},恢复:无,重新启动:无,禁用恢复:无[173C:176C][2018-03-13T14:01:24]i330:删除捆绑包依赖提供者:{a94dd5f5-3343-45c7-ab0b-17c3ba9e8644}[173C:176C][2018-03-13T14:01:24]i352:删除缓存包:{a94dd5f5-3343-45c7-ab0b-17c3ba9e8644},来自路径:C:ProgramData包缓存 {a94dd5f5-3343-45c7-ab0b-17c3ba9e8644}[173C:176C][2018-03-13T14:01:24]i371:更新会话,注册钥匙:SOFTWAREMicrosoftWindowsCurrentVersionUninstall{a94dd5f5-3343-45c7-ab0b-17c3ba9e8644},恢复:无,重新启动:否,禁用简历:否 [18F0:04C0][2018-03-13T14:01:24]i399:申请完成,结果:0x80070652,重启:无,ba 请求重启:无

[18F0:04C0][2018-03-13T14:01:04]w348: Application requested retry of package: vcredist_x64.exe, encountered error: 0x80070652. Retrying... [173C:176C][2018-03-13T14:01:07]i301: Applying execute package: vcredist_x64.exe, action: Install, path: C:ProgramDataPackage Cache13674C43652B941DAFD2049989AFCE63CB7C517Bvcredist_x64.exe, arguments: '"C:ProgramDataPackage Cache13674C43652B941DAFD2049989AFCE63CB7C517Bvcredist_x64.exe" /qb /norestart' [173C:176C][2018-03-13T14:01:11]e000: Error 0x80070652: Process returned error: 0x652 [173C:176C][2018-03-13T14:01:11]e000: Error 0x80070652: Failed to execute EXE package. [18F0:04C0][2018-03-13T14:01:11]e000: Error 0x80070652: Failed to configure per-machine EXE package. [18F0:04C0][2018-03-13T14:01:11]w348: Application requested retry of package: vcredist_x64.exe, encountered error: 0x80070652. Retrying... [173C:176C][2018-03-13T14:01:14]i301: Applying execute package: vcredist_x64.exe, action: Install, path: C:ProgramDataPackage Cache13674C43652B941DAFD2049989AFCE63CB7C517Bvcredist_x64.exe, arguments: '"C:ProgramDataPackage Cache13674C43652B941DAFD2049989AFCE63CB7C517Bvcredist_x64.exe" /qb /norestart' [173C:176C][2018-03-13T14:01:17]e000: Error 0x80070652: Process returned error: 0x652 [173C:176C][2018-03-13T14:01:17]e000: Error 0x80070652: Failed to execute EXE package. [18F0:04C0][2018-03-13T14:01:17]e000: Error 0x80070652: Failed to configure per-machine EXE package. [18F0:04C0][2018-03-13T14:01:17]w348: Application requested retry of package: vcredist_x64.exe, encountered error: 0x80070652. Retrying... [173C:176C][2018-03-13T14:01:20]i301: Applying execute package: vcredist_x64.exe, action: Install, path: C:ProgramDataPackage Cache13674C43652B941DAFD2049989AFCE63CB7C517Bvcredist_x64.exe, arguments: '"C:ProgramDataPackage
Cache13674C43652B941DAFD2049989AFCE63CB7C517Bvcredist_x64.exe" /qb /norestart' [173C:176C][2018-03-13T14:01:24]e000: Error 0x80070652: Process returned error: 0x652 [173C:176C][2018-03-13T14:01:24]e000: Error 0x80070652: Failed to execute EXE package. [18F0:04C0][2018-03-13T14:01:24]e000: Error 0x80070652: Failed to configure per-machine EXE package. [18F0:04C0][2018-03-13T14:01:24]i319: Applied execute package: vcredist_x64.exe, result: 0x80070652, restart: None [18F0:04C0][2018-03-13T14:01:24]e000: Error 0x80070652: Failed to execute EXE package. [173C:176C][2018-03-13T14:01:24]i351: Removing cached package: vcredist_x64.exe, from path: C:ProgramDataPackage Cache13674C43652B941DAFD2049989AFCE63CB7C517B [173C:176C][2018-03-13T14:01:24]i351: Removing cached package: NDP452_KB2901907_x86_x64_AllOS_ENU.exe, from path: C:ProgramDataPackage Cache89F86F9522DC7A8A965FACCE839ABB790A285A63 [173C:176C][2018-03-13T14:01:24]i351: Removing cached package: dotnetfx35.exe, from path: C:ProgramDataPackage Cache3DCE66BAE0DD71284AC7A971BAED07030A186918
[173C:176C][2018-03-13T14:01:24]i372: Session end, registration key: SOFTWAREMicrosoftWindowsCurrentVersionUninstall{a94dd5f5-3343-45c7- ab0b-17c3ba9e8644}, resume: None, restart: None, disable resume: No [173C:176C][2018-03-13T14:01:24]i330: Removed bundle dependency provider: {a94dd5f5-3343-45c7-ab0b-17c3ba9e8644} [173C:176C][2018-03-13T14:01:24]i352: Removing cached bundle: {a94dd5f5- 3343-45c7-ab0b-17c3ba9e8644}, from path: C:ProgramDataPackage Cache {a94dd5f5-3343-45c7-ab0b-17c3ba9e8644} [173C:176C][2018-03-13T14:01:24]i371: Updating session, registration key: SOFTWAREMicrosoftWindowsCurrentVersionUninstall{a94dd5f5-3343-45c7- ab0b-17c3ba9e8644}, resume: None, restart initiated: No, disable resume: No [18F0:04C0][2018-03-13T14:01:24]i399: Apply complete, result: 0x80070652, restart: None, ba requested restart: No

推荐答案

那个错误 0x80070652 是另一个安装正在进行中".您不能运行递归 MSI 安装或同时 MSI 安装 - 您的 MSI 不能调用另一个基于 MSI 的安装,也不能同时运行两个基于 MSI 的安装.从(部分?)日志中很难分辨出同时发生了哪些基于 MSI 的安装.

That error 0x80070652 is "another installation is in progress". You cannot run recursive MSI install or simultaneous MSI installs - your MSI cannot call another MSI-based install, and neither can you run two MSI-based installs at the same time. It's hard to tell from the (partial?) log what MSI-based installed are happening at the same time.

这篇关于Wix 自定义操作序列的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

DispatcherQueue null when trying to update Ui property in ViewModel(尝试更新ViewModel中的Ui属性时DispatcherQueue为空)
Drawing over all windows on multiple monitors(在多个监视器上绘制所有窗口)
Programmatically show the desktop(以编程方式显示桌面)
c# Generic Setlt;Tgt; implementation to access objects by type(按类型访问对象的C#泛型集实现)
InvalidOperationException When using Context Injection in ASP.Net Core(在ASP.NET核心中使用上下文注入时发生InvalidOperationException)
LINQ many-to-many relationship, how to write a correct WHERE clause?(LINQ多对多关系,如何写一个正确的WHERE子句?)