Windows 使用Visual Studio集成的WiX托管自定义操作中没有调试信息
我已经设法用C#创建了一个自定义操作,使用的是Windows 使用Visual Studio集成的WiX托管自定义操作中没有调试信息,windows,visual-studio-2008,installation,wix,custom-action,Windows,Visual Studio 2008,Installation,Wix,Custom Action,我已经设法用C#创建了一个自定义操作,使用的是MakeSfxCA,它基本上是有效的 然而,有一些纠结需要调试来解决。(仅“printf调试”是不够的。) 但是,所有调试信息都将丢失。 从Visual Studio项目调用MakeSfxCA时,.pdb文件不会作为参数传递,因此创建的CA dll中不包含调试信息 如果我手动运行MakeSfxCA MakeSfxCA MyDLL.CA.dll SfxCa.dll MyDLL.dll MyDLL.pdb CustomAction.config 然后,
MakeSfxCA
,它基本上是有效的
然而,有一些纠结需要调试来解决。(仅“printf调试”是不够的。)
但是,所有调试信息都将丢失。从Visual Studio项目调用MakeSfxCA时,.pdb文件不会作为参数传递,因此创建的CA dll中不包含调试信息 如果我手动运行
MakeSfxCA
MakeSfxCA MyDLL.CA.dll SfxCa.dll MyDLL.dll MyDLL.pdb CustomAction.config
然后,调试信息将包含在创建的自定义操作dll中
如何让WiX CA项目自动添加pdb信息
/Leif我发现,如果我创建了一个C类型的项目#Custom Action project,那么它会神奇地工作 此外,我还可能尝试向我的项目中添加一个构建后事件。大致如下:
"C:\Program Files\Windows Installer XML v3\SDK\MakeSfxCA.exe"
$(TargetDir)$(TargetName).CA.dll
"C:\Program Files\Windows Installer XML v3\SDK\x86\SfxCA.dll"
$(TargetDir)$(TargetName).dll
$(TargetDir)$(TargetName).pdb
$(TargetDir)Microsoft.Deployment.WindowsInstaller.dll
(不过,我还没有尝试过,因为我已经让它像上面那样工作了。)
/L