使用WiX Toolset创建文件关联

5
我创建了一个可以打开图像文件的应用程序。现在我正在使用WiX Toolset创建安装程序。最近几天,我遇到了一些误解:试图注册我的应用程序并将其与所需的扩展名相关联。所有内容都出现在注册表中,但我的文件没有一个使用我的应用程序打开,就好像它没有被安装一样。
这是我描述可执行文件并为其注册所有扩展名的部分:
<Component Id="CmpLightImageViewer.exe" Guid="{...}">
  <File Id="MainExe" Name="LightImageViewer.exe" />
</Component>

<Component Id="CmpLightImageViewerProgId" Guid="{391FBC30-B5A1-4AB7-8FA4-254C1CE2BF69}" KeyPath="yes">
  <ProgId Id="LightImageViewerSvg" Description="Light image viewer">
    <Extension Id="svg">
      <Verb Id="open" TargetFile="MainExe" Argument="&quot;%1&quot;" />
    </Extension>
  </ProgId>
  <ProgId Id="LightImageViewerGif" Description="Light image viewer">
    <Extension Id="gif">
      <Verb Id="open" TargetFile="MainExe" Argument="&quot;%1&quot;" />
    </Extension>
  </ProgId>
...
</Component>

这就是我在我的注册表HKCR中看到的。在HKCU/Software/Classes中也一样,但在HCLM/Software/Classes中却没有:

enter image description here

我错过了什么?我需要做什么才能使它工作?虽然我可以使用Windows工具为每种类型手动设置文件关联,但这不是我想要的方式。

我正在使用vs2015在Windows10上构建它,并使用wix3.10。

2个回答

3

0

我看到注册表中写入的数据存在潜在问题。

路径似乎由于冗余引号而出错。

你的路径应该像这样:

"C:\Program Files (x86)\LightImageViewer\LightImageViewer.exe %1"


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接