I wrote a shell extension (item in explorer's file context menu), and used WiX's heat
to create an MSI from the DLL.
PROBLEM: Installing the MSI does not make the context menu item appear.
In contrast, running Regasm.exe my.dll /codebase
makes the item appear.
heat
writes registry keys into HKEY_CLASSES_ROOT\
, while
Regasm
writes registry keys into HKEY_LOCAL_MACHINE\SOFTWARE\Classes\
.
I could modify the heat
-generated WXS to write to the same registry path as Regasm
, but MSDN suggests HKEY_CLASSES_ROOT and apparently some users are not be able to write into HKEY_LOCAL_MACHINE... is there a better solution?