你能告诉我,我的代码有什么问题吗?
<?xml version="1.0" encoding="utf-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xse="http://schemas.microsoft.com/wix/2005/XmlSchemaExtension" xmlns:html="http://www.w3.org/1999/xhtml">
<Product Id="c1ee1e1f-4e2a-41c6-a716-eb6f79477012" Name="AdministKOB" Language="1033" Version="1.0.0.0" Manufacturer="Project UP" UpgradeCode="909b9926-711d-4a97-887b-df0bafc6ea66">
<Package InstallerVersion="200" Compressed="yes" />
<Media Id="1" Cabinet="media1.cab" EmbedCab="yes" />
<Icon Id="ikonka" SourceFile="Files\AdministKOB.exe"/>
<Directory Id="TARGETDIR" Name="SourceDir">
<Directory Id="DesktopFolder"/>
<Directory Id="ProgramMenuFolder">
</Directory>
<Directory Id="ProgramFilesFolder">
<Directory Id="INSTALLLOCATION" Name="Administ_KOB">
<Component Id="ProductComponent" Guid="6bd37582-5219-4ae4-a56e-cd1ecd375efa">
<File Id="AdministKOB" Name="AdministKOB.exe" Source="Files\AdministKOB.exe" KeyPath="yes">
<Shortcut Advertise="yes"
Id="DesktopShortcut"
Directory="DesktopFolder"
Name="AdministKOB"
WorkingDirectory="INSTALLDIR"
Description="Elektroniczna ksiazka budynku"
Icon ="ikonka">
</Shortcut>
</File>
<!--<File Id="ikonka" Name="C.ico" DiskId="1" Source="City.ico" Vital="yes" />-->
</Component>
</Directory>
</Directory>
</Directory>
<Feature Id="ProductFeature" Title="AdministKOB" Level="1">
<ComponentRef Id="ProductComponent" />
</Feature>
<Property Id="WIXUI_INSTALLDIR" Value="INSTALLLOCATION" />
</Product>
</Wix>
我收到此错误和警告:
用于快捷方式'DesktopShortcut'的Icon'ikonka'的扩展名不是“exe”或“ico”。图标将无法正确显示。*
为什么呢?我给ICO文件。
用于快捷方式'DesktopShortcut'的Icon'ikonka'扩展名与组件'ProductComponent'的密钥文件扩展名不匹配。
你有什么想法吗?
答案 0 :(得分:15)
您似乎缺少Icon
元素..例如
<Icon Id="City.ico" SourceFile="City.ico" />
<Component ...>
<File ...>
<Shortcut Advertise="yes"
Id="DesktopShortcut"
Directory="DesktopFolder"
Name="AdministKOB"
WorkingDirectory="INSTALLDIR"
Description="Elektroniczna książka budynku"
Icon ="City.ico" />
</File>
</Component>
答案 1 :(得分:12)
您的图标ID必须为“.exe”或“.ico”。
Icon Id =“ikonka * .ico *”SourceFile =“Files \ AdministKOB.exe”/
答案 2 :(得分:2)
很容易:
<Shortcut Directory="DesktopFolder" Id="DesktopShortcut" Name="YourApp" Description="DescriptionOfYourApp" Target="http://localhost/" Icon="YourAppIcon">
<Icon Id="YourAppIcon" SourceFile="$(var.BinDir)\favicon.ico" />
</Shortcut>
答案 3 :(得分:0)
此外,快捷方式的图标属性可以直接指向exe或ico文件,但是,文件名中不能有任何空格,否则会出错:
The Shortcut/@Icon attribute's value, '"C:\Users\yadayadayada\Data Migration.exe', is not a
legal identifier. Identifiers may contain ASCII characters A-Z, a-z, digits, underscores
(_), or periods (.). Every identifier must begin with either a letter or an underscore.
SetupProject C:\Users\yadayadayada\SetupProject\Product.wxs 53
答案 4 :(得分:0)
以下为我工作。 Milage可能会有所不同。
<?xml version="1.0" encoding="UTF-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">
<Fragment>
<Icon Id="dbwizard.ico" SourceFile="dbwizard.ico" />
<ComponentGroup Id="DBWizardComponentGroup" Directory="INSTALLFOLDER">
<Component Id="FakeDBWizard_exe" Guid="{2008318F-8628-411E-B1B9-BC92989BCD19}">
<File Id="FakeDBWizard_exe"
Name="FakeDBWizard_exe"
Source="database\FakeDBWizard.exe"
KeyPath="yes">
<Shortcut Id="DBWizardShortcut"
Directory="Otter32ShortcutDir"
Name="Otter Database Wizards"
Description="Database Wizards for ABCSystem32"
WorkingDirectory="INSTALLFOLDER"
Advertise="yes"
Icon="dbwizard.ico" />
答案 5 :(得分:-1)
我把标签放在我的列表顶部:) 我使用exe文件中的图标。 Wix对文件图标文件和我的文件(桌面上的快捷方式)需要相同的扩展名
感谢您的参与:)