答案 0 :(得分:4)
第一步是学习如何手工完成。这涉及创建Shell扩展和registering it。根据MSDN,您可以通过implementing IContextMenu执行此操作,并将其CLSID列在注册表项HKEY_CLASSES_ROOT \ ProgID \ ShellEx \ ContextMenuHandlers的子项中。此外,在编写该注册表项后,您必须使用 SHCNE_ASSOCCHANGED 调用SHChangeNotify,或重新启动。
如果您的需求比7-zip案例更简单,您可能只需注册一个Verb or File Association。
完成此操作并在开发计算机上对其进行测试后,您已准备好进行第2步:将其作为安装程序的一部分。如果您正在创建动词或文件关联,则可以使用本机Windows Installer表,通过ProgId,Extension和Verb元素公开。如果您正在注册shell扩展,我相信您必须直接通过RegistryKey和RegistryValue元素创建注册表项。
有关WiX创作的更具体示例,请参阅How to register file types/extensions with a WiX installer?和How to associate application with existing file types using WiX installer?的答案