【问题标题】:How do I get a shortname for a folder in WiX for a Windows Installer property?如何在 WiX 中为 Windows Installer 属性获取文件夹的短名称?
【发布时间】:2011-08-03 04:12:02
【问题描述】:

我在从 regspy.exe 中提取 COM 注册后尝试通过 WiX 注册一个进程外 COM 文件 (.exe),并且遇到了我需要编写的注册表项的问题:

<RegistryValue Value="C:\PROGRA~1\COMMON~1\file.exe /Automation" Type="String" />

现在我想使用 Windows Installer 属性 [CommonFilesFolder],因为不是每个人都安装到 C:\

对于进程内 (.dll),可以接受长名称:

<RegistryValue Value="[CommonFilesFolder]file.dll" Type="string" />

但是对于进程外来说,这似乎不是真的。有没有办法说服或将 [CommonFilesFolder] 转换为简称?这是 x64 的一个特殊问题,因为名称将解析为 C:\PROGRA~2\ 而不是 C:\PROGRA~1\

【问题讨论】:

  • 在可执行文件名周围加上引号也应该适用于长路径,例如Value="&amp;quot;[CommonFilesFolder]file.exe&amp;quot; /Automation"

标签: wix windows-installer wix3.5


【解决方案1】:

使用 [!idOfFile] 获取完整的短路径。 (有关特殊格式键的完整列表,请参阅 Formatted in MSI SDK。)

【讨论】:

    猜你喜欢
    • 2012-05-20
    • 1970-01-01
    • 2014-06-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-05-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多