![](/img/trans.png)
[英]How to disable MSI logging files presumably being generated by Visual Studio
[英]Wix Bootstrapper MSI-Package logging, how?
我有一个安装MSI 包的引导程序。
我怎样才能至少实现 msi-package-installation 被记录(详细日志记录)? 我在哪里可以设置日志文件路径? 因为我将无法记录我猜的所有内容?
不,我不想要一个cmd 解决方案,我需要在我的设置中实现它
找到了 LogPathVariable,但真的不知道它是如何工作的?
<MsiPackage SourceFile="$(var.Setup.TargetPath)" LogPathVariable="" />
谷歌搜索了很多次,没有找到解决这个问题的方法,有什么帮助吗?
默认情况下(未设置 LogPathVariable)将在 C:\\Users\\username\\AppData\\Local\\Temp 中创建日志,MSI 日志将是详细的,还会有引导程序的日志。
对于自定义目的地,您可以创建一个变量并设置它
<Variable Name="MyLogDestination" Type="string" Value=path to where you want log created />
您可以将其中一个刻录变量与部分路径结合使用。 我认为
<Variable Name="MyLogDestination" Type="string" Value="[ProgramFiles6432Folder]\YourProduct\" />
虽然我没有尝试过,但可能会奏效。
然后,您将变量名放在 LogPathVariable 中
<MsiPackage SourceFile="$(var.Setup.TargetPath)" LogPathVariable="MyLogDestination" />
我就是这样做的:
在 Bundle 下添加 Log 元素:
<Log PathVariable="LOGPATH_PROP" Disable="yes" Prefix='[WixBundleOriginalSource]' Extension=".txt" />
然后在 MsiPackage 元素中将 LogPathVariable 设置为“LOGPATH_PROP”。 关键是在 Log 元素中将 Disable 属性设置为 yes。
捆绑安装和软件包日志都将创建到%TEMP%
(C:\\Users\\username\\AppData\\Local\\Temp) 中。
日志文件的命名方案是:
BundleName_yyyyMMddHHmmss.log
日期和时间是安装开始时的日期和时间。 对于每个链接的 MSI 包,Burn 会自动启用详细日志记录。 链式包日志文件命名方案是:
BundleName_yyyyMMddHHmmss_#_PackageId.log
其中 # 表示应用程序包的顺序。 如果安装失败并且在回滚过程中删除了相同的包,则同一个包可能会以 #s 出现多次。 (例如 BundleName_yyyyMMddHHmmss_002_FailedPackage_rollback.log)
为了获得包安装程序位置路径,您可以使用BootstrapperApplication.Engine.StringVariables[WixBundleLog]
,为了获得包日志文件,您可以使用BootstrapperApplication.Engine.StringVariables[WixBundleLog_packageId]
。
如果要更改默认位置 ( %TEMP%
),可以使用 MsiPackage 元素的LogPathVariable
属性来提供自定义日志文件名:
请参阅: http : //wixtoolset.org/documentation/manual/v3/xsd/wix/msipackage.html
另外: https : //support.firegiant.com/hc/en-us/articles/230912207-Pass-Properties-to-MsiPackage-from-Bundle-
这将为您创建空的日志文件夹...
<Directory Id="LOGSDIR" Name="logs">
<Component Guid="GUID" Id="ID" KeyPath="no" NeverOverwrite="no" Permanent="no" Location="local" Permanent="no">
<CreateFolder>
<util:PermissionEx CreateChild="yes" CreateFile="yes" Delete="yes" DeleteChild="yes" Read="yes" ReadAttributes="yes" ReadExtendedAttributes="yes" ReadPermission="yes" Traverse="yes" GenericRead="yes" GenericWrite="yes" User="Everyone" />
</CreateFolder>
</Component>
</Directory>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.