Heat.exe为什么会为Regasm创建不同的注册表项?

时间:2014-08-30 07:21:32

标签: wix windows-installer heat

我正在尝试使用heat来创建必要的注册表项。程序集是一个简单的虚拟 Shell Context处理程序,它将上下文菜单添加到.txt结尾。

如果我使用 Regasm 进行注册,则会在此处添加一个注册表项(不是唯一一个但不同的注册表项)。请注意,它位于txtfile。

[HKEY_CLASSES_ROOT\txtfile\shellex] [HKEY_CLASSES_ROOT\txtfile\shellex\ContextMenuHandlers] [HKEY_CLASSES_ROOT\txtfile\shellex\ContextMenuHandlers\{1e25bcd5-f299-496a-911d-51fb901f7f40}] @="VBShellExtContextMenuHandler.FileContextMenuExt Class"

如果我使用热量,则不使用此 txtfile 。它使用.txt

[HKEY_CLASSES_ROOT\.txt\shellex] [HKEY_CLASSES_ROOT\.txt\shellex\ContextMenuHandlers] [HKEY_CLASSES_ROOT\.txt\shellex\ContextMenuHandlers\{1e25bcd5-f299-496a-911d-51fb901f7f40}] @="VBShellExtContextMenuHandler.FileContextMenuExt Class"

regasm制作的其他键看起来和Heat一样,但是这个键不是,这意味着菜单会因为Heat键而失败。

这是一个已知的热问题吗?

我知道我可以简单地改变它,但这是一个测试,我需要添加大约15个扩展。

1 个答案:

答案 0 :(得分:0)

查看帮助主题Regasm.exe (Assembly Registration Tool)中的问题。

  

请注意,.reg文件不包含任何可以进行的注册表更新   由用户定义的寄存器功能构成。注意/ regfile   选项仅发出托管类的注册表项。这个选项   不会为TypeLibIDs或InterfaceIDs发出条目。

我对于热火与Regasm的互动并不是100%肯定,但我知道InstallShield的.NET Com Interop会调用Regasm / regfile,所以这个问题会适用。

就我个人而言,我只使用这些工具作为我可以使用的众多工具之一来收集需求,将其全部排序然后手动创作。