2

好像我一直在问关于 Wix 的问题。这应该是最后一次了,这只是一个抛光。

我希望我的关联文件有一个图标,但在我的 ProgId 元素中,没有指定广告,我假设默认为 no。因此,在 wix 文档中,它指出:

对于公布的 ProgId,Icon 元素的 Id。对于未公布的 ProgId,这是包含图标资源的文件的 Id。

我根本不明白这是如何工作的。我是否设置了一个包含图标的文件夹并使用 IconIndex 引用它?这是我正在使用的 .wxs 的一部分。

<Component Id ="MyApp.exe" Guid="{GUID-HERE}">
            <File Id="MyApp.exe" KeyPath="yes" Source="$(var.MyApp.TargetDir)MyApp.exe" />
            <ProgId Id ="MyAppProgID" Description="MyApp data files" Icon ="Logo.ico" IconIndex="0">
                <Extension Id ="myapp" ContentType="application/myapp">
                    <Verb Id ="open" Command="open" TargetFile="MyApp.exe" Argument="&quot;%1&quot;"/>
                </Extension>
            </ProgId>

<Icon Id="Logo.ico" SourceFile="$(var.MyApp.TargetDir)\Icon\Logo.ico"/>

我正在努力寻找有关 wix 的许多 ProgId 功能的任何示例或适当的文档。

提前致谢

4

1 回答 1

2

您需要将 Icon 元素更改为 File 并删除 IconIndex

<Component Id ="MyApp.exe" Guid="{GUID-HERE}">
        <File Id="MyApp.exe" KeyPath="yes" Source="$(var.MyApp.TargetDir)MyApp.exe" />
        <File Id="Logo.ico" SourceFile="$(var.MyApp.TargetDir)\Icon\Logo.ico"/>
        <ProgId Id ="MyAppProgID" Description="MyApp data files" Icon ="Logo.ico">
            <Extension Id ="myapp" ContentType="application/myapp">
                <Verb Id ="open" Command="open" TargetFile="MyApp.exe" Argument="&quot;%1&quot;"/>
            </Extension>
        </ProgId>
于 2015-12-16T09:29:16.870 回答