【发布时间】:2018-08-22 00:15:54
【问题描述】:
我正在尝试将 MediaSourceDir 写入应用程序安装的注册表中,并且它始终插入一个空值。我在安装时成功地将 SourceDir 写入注册表,我的 .wxs 文件中有以下内容:
<RegistryValue Type="string" Name="MediaSourceDir" Value="[MediaSourceDir]" />
<RegistryValue Type="string" Name="SourceDir" Value="[SourceDir]" />
我使用详细日志运行安装程序,以下是一些有趣的部分:
MSI (c) (70:48) [16:30:17:332]: PROPERTY CHANGE: Adding SourceDir property. Its value is 'D:\'.
MSI (c) (70:48) [16:30:17:332]: PROPERTY CHANGE: Adding SOURCEDIR property. Its value is 'D:\'.
MSI (c) (70:48) [16:30:17:332]: PROPERTY CHANGE: Adding MediaSourceDir property. Its value is '1'.
所以看起来它正在正确获取必要的安装程序属性。但是稍后在日志文件中,当它向注册表添加值时,它会报告以下内容:
MSI (s) (C4:F0) [16:30:31:525]: Executing op: RegAddValue(Name=MediaSourceDir,,)
MSI (s) (C4:F0) [16:30:31:530]: Executing op: RegAddValue(Name=SourceDir,Value=D:\,)
如您所见,MediaSourceDir 键的值为空。我很困惑为什么当我为 SourceDir 做类似的事情并且它无缝工作时这不起作用。任何见解将不胜感激。
【问题讨论】:
标签: windows wix installation