2016-06-06 16 views
1

Ich muss die Verknüpfung zu meiner CHM-Datei erstellen. Sein Icon ist aus der C:\Windows\hh.exe Datei zu bekommen. Das Icon Attribut erfordert eine Id der Komponente, aber hh.exe fehlt in meinem MSI, da es immer im Verzeichnis C:\Windows\ existiert. Deshalb wird es nicht funktionieren:Wix: Wie kann ich `C: Windows hh.exe` als Quelle des Symbols für meine CHM-Dateiverknüpfung anzeigen?

<Component Id="Help_default" Guid="{BE58A822-637E-4B58-B2AC-690BA9FDF833}"> 
    <File Name="ProxyTools.chm" KeyPath="yes"> 
    <Shortcut Id="ProxyTools.exe" Directory="ProgramMenuDir" 
       Name="ProxyTools (English)" 
       WorkingDirectory='INSTALLDIR' Advertise="yes" Icon="hh.exe" IconIndex="0"/> 
    </File> 
</Component> 

Vielleicht bin ich von

irgendwie die hh.exe wie der Artikel verweisen
<Directory Id="WindowsFolder"/> 

Wie kann ich C:\Windows\hh.exe als Quelle für das Symbol zeigen für meine CHM-Datei Abkürzung?

UPD

ich hh.exe in mein WiX Projekt hinzugefügt und hat dieses Bild:

<Icon Id="hh.exe" SourceFile="hh.exe"/> 

Jetzt Verknüpfungen richtig ist.

+0

Außer jetzt müssen Sie Ihre Windows-EULA auf Redistribution hh.exe zu konsultieren. Ich würde nach einer .ico-Datei suchen, die durch meine Lizenzen abgedeckt ist. (Und dann umbenennen Sie es überraschend, "hh.ico.exe".) –

Antwort

0

Windows Installer macht dies nicht möglich. Um den genauen Funktionsumfang zu verstehen, müssen Sie die zugrunde liegenden Tabellen untersuchen. Zuerst ist die Spalte Shortcut table Symbol "Der externe Schlüssel zu Spalte eins der Icon table." Die Icon-Tabelle enthält einen Primärschlüssel (unter anderem durch die Shortcut-Tabelle bezeichnet) und einen Binäreintrag. Die Binärdaten sind die zu verwendenden Symboldaten.

Da die eigentlichen Symboldaten in der resultierenden .msi-Datenbank gespeichert werden müssen und es keine alternativen Möglichkeiten zur Angabe eines Symbols gibt, können Sie nicht auf ein Symbol verweisen, das möglicherweise bereits auf dem System vorhanden ist. Sie können das gewünschte Symbol in eine Ressource der Icon-Tabelle kopieren, aber das ist so nah, wie Sie mit nativer Windows Installer-Funktionalität kommen können.