自定义文件类型图标使用InstallShield LE

时间:2013-05-06 22:18:12

标签: icons file-association installshield-le

当我从Visual Studio 2010升级到Visual Studio 2012时,我最近不得不转换我的安装程序项目,因为不支持.vdproj文件。我使用InstallShield LE,我认为一切正常,但我不知道如何在自定义文件类型上设置图标。我可以在应用程序快捷方式上设置图标,但不能在我与应用程序关联的文件类型上设置。有谁知道怎么做?

1 个答案:

答案 0 :(得分:0)

问题在于,当我导入.vdproj文件时,它复制了图标文件的错误目录。我在尝试重建安装程序项目时发现了这一点,并且由于图标文件丢失而导致构建失败。我不太明白发生了什么,但我更改了.isl文件中的条目以指向图标文件的位置:

<table name="Icon">
  <row><td>_F8BD094F_6318_4354_8857_12B610250F29</td><td/><td>C:\Updated\path\to\icon\file\myicon.ico</td><td>0</td></row>
</table>

此条目稍后将在此处的文件中引用:

<table name="ProgId">
  <col key="yes" def="s255">ProgId</col>
  <col def="S255">ProgId_Parent</col>
  <col def="S38">Class_</col>
  <col def="L255">Description</col>
  <col def="S72">Icon_</col>
  <col def="I2">IconIndex</col>
  <col def="I4">ISAttributes</col>
  <row><td>MedLnx Project</td><td/><td/><td>MedLnx Project File</td><td>_F8BD094F_6318_4354_8857_12B610250F29</td><td>0</td><td/></row>
</table>

然而,现在我担心指向静态路径。如果我没有文件的相对路径,我将在另一个用户的目标机器上遇到相同的情况。图标文件位于要安装的应用程序的项目文件夹中(而不是安装程序的项目文件夹)。如果重要的话我可以在那里移动副本,但是如何获得相对路径?