相关疑难解决方法(0)

升级期间未复制文件(仅)

概述

对于我产品的新版本 v1.9.0,我创建了一个新的 MSI 安装程序。该应用程序的先前版本是 v1.7.0。

卸载旧版本然后安装新版本工作正常。

但是当我尝试使用 v1.9.0 安装程序更新旧版本时,正好缺少一个文件 ( NLog.dll )。所有其他文件都被复制得很好。

我正在使用 heat.exe 为我的应用程序的所有依赖项创建组件。因此NLog.dll的处理方式与其他所有文件完全相同,但它是唯一显示这种奇怪行为的文件。

NLog.dll从升级到 v1.9.0 的日志片段

这些是此文件的相关日志片段。

第 5174 行:

MSI (s) (E4:1C) [17:12:42:343]: WIN64DUALFOLDERS: Substitution in 'C:\Program Files (x86)\Cisco\DiagnosticBridge\bin\NLog.dll' folder had been blocked by the 1 mask argument (the folder pair's iSwapAttrib member = 0).
Run Code Online (Sandbox Code Playgroud)

第 37733 行:

MSI (s) (E4:1C) [17:13:12:252]: Executing op: FileRemove(,FileName=NLog.dll,,ComponentId={53AAD98D-AFDB-4D70-ADCC-5305C3174ED5})
RemoveFiles: File: NLog.dll, Directory: C:\Program Files (x86)\Cisco\DiagnosticBridge\bin\
MSI (s) (E4:1C) [17:13:12:260]: Verifying accessibility of file: NLog.dll
MSI (s) …
Run Code Online (Sandbox Code Playgroud)

windows-installer wix

7
推荐指数
2
解决办法
953
查看次数

使用 WiX 作为 Windows 服务安装 .NET Core 3.0 Worker Service

随着 .NET Core 3 的新版本,我正在尝试使用新的工作服务模板制作 Windows 服务。我需要能够使用组策略安装它,而 WiX 似乎是这项工作的工具。

我已经创建了 .wxs 文件并且没有指定 ServiceInstall 部分,它安装得很好。

这是我的文件:更新

<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
  <Product Id="*" Name="SystemInformationService" Language="1033" Version="1.0.0.0" Manufacturer="MyCompany" UpgradeCode="f08191cf-461e-481b-a2a1-6f54d6ae5331">
    <Package InstallerVersion="200" Compressed="yes" InstallScope="perMachine" />

    <MajorUpgrade DowngradeErrorMessage="A newer version of [ProductName] is already installed." />

    <!-- Embed cab files, don't include them in the output -->
    <MediaTemplate EmbedCab="yes"/>

    <!-- Default WiX dialog set -->
    <UIRef Id="WixUI_Mondo" />

    <!-- License agreement -->
    <WixVariable Id="WixUILicenseRtf" Value="LicenseAgreement.rtf" />

    <Feature Id="ProductFeature" Title="SystemInformationService.Setup" Level="1">
      <ComponentGroupRef Id="ProductComponents" /> …
Run Code Online (Sandbox Code Playgroud)

c# wix .net-core

7
推荐指数
1
解决办法
4027
查看次数

如何在 c# 中创建自定义操作并将其绑定到 wix 设置项目

如何创建自定义操作并将其链接到我的 WiX 设置项目?

我有:

  • WiX 3.11
  • 视觉工作室

.net c# windows-installer wix

6
推荐指数
1
解决办法
5671
查看次数

配置WiX以自动设置产品版本属性?

当前,每当我构建软件包时,都必须像这样在Product.wxs文件中手动增加Version属性:

<Product 
    Id = "*"
    Version="4.1.3"
Run Code Online (Sandbox Code Playgroud)

我想自动化,以简化构建过程。我们对exe / dll文件使用以下版本控制方案:

major.minor.special.build
Run Code Online (Sandbox Code Playgroud)

特殊字符几乎从未使用过,并且设置为0,并且约定是按如下方式对打包的MSI进行版本控制,因为您只能使用三个数字:

major.minor.build
Run Code Online (Sandbox Code Playgroud)

我见过的唯一解决方案是让您获取另一个项目的4位数字版本,然后截断构建版本,因此最终得到以下结果:

major.minor.special
Run Code Online (Sandbox Code Playgroud)

显然,这对我们的方案不起作用,因为我们丢失了内部版本号。我该如何抓住major.minor.build而忽略特殊性?

wix

0
推荐指数
1
解决办法
1494
查看次数

标签 统计

wix ×4

c# ×2

windows-installer ×2

.net ×1

.net-core ×1