我是WIX的新手(因为VS2013不再支持我的设置项目而感动)。
我正在使用:Windows Installer XML Toolset Toolset Harvester版本3.8.1128.0
我想从.reg文件生成一个WIX片段但是什么时候执行:
heat reg MyApp.reg -v -o MyApp.wxs
MyApp.wxs的内容很简单:
<?xml version="1.0" encoding="utf-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi" />
注册表文件MyApp.reg的内容是:
REGEDIT
; This .REG file may be used by your SETUP program.
; If a SETUP program is not available, the entries below will be
; registered in your InitInstance automatically with a call to
; CWinApp::RegisterShellFileTypes and COleObjectFactory::UpdateRegistryAll.
HKEY_CLASSES_ROOT\.ad = MyApp.Document
HKEY_CLASSES_ROOT\MyApp.Document\shell\open\command = MYAPP.EXE %1
HKEY_CLASSES_ROOT\MyApp.Document\shell\open\ddeexec = [open("%1")]
HKEY_CLASSES_ROOT\MyApp.Document\shell\open\ddeexec\application = AXSYS
; note: the application is optional
; (it defaults to the app name in "command")
HKEY_CLASSES_ROOT\MyApp.Document = MyApp Document
HKEY_CLASSES_ROOT\MyApp.Document\CLSID = {405890C4-E3AA-11D2-AE41-0040053793DD}
HKEY_CLASSES_ROOT\CLSID\{405890C4-E3AA-11D2-AE41-0040053793DD} = MyApp Document
HKEY_CLASSES_ROOT\CLSID\{405890C4-E3AA-11D2-AE41-0040053793DD}\ProgId = MyApp.Document
HKEY_CLASSES_ROOT\CLSID\{405890C4-E3AA-11D2-AE41-0040053793DD}\LocalServer32 = MYAPP.EXE
谢谢。
答案 0 :(得分:0)
我从未见过像您帖子中那样的注册表文件。使用regedit中的默认导出格式,heat
可以完美运行。例如。这是从regedit出口:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Event Viewer]
"MicrosoftRedirectionProgram"=hex(2):00,00
"MicrosoftRedirectionProgramCommandLineParameters"=""
"MicrosoftRedirectionURL"="http://go.microsoft.com/fwlink/events.asp"
这里有一个使用Win9x / WinNT格式:
REGEDIT4
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Event Viewer]
"MicrosoftRedirectionProgram"=hex(2):00
"MicrosoftRedirectionProgramCommandLineParameters"=""
"MicrosoftRedirectionURL"="http://go.microsoft.com/fwlink/events.asp"
最简单的解决方案可能是在已经存在密钥的系统上运行regedit,然后导出这些密钥(通过右键单击注册表配置单元并从上下文菜单中选择Export
)然后使用生成的.reg文件作为热运行的源。