使用 Visual Studio 集成的 WiX 托管自定义操作中没有调试信息

发布于 2024-08-28 00:55:48 字数 428 浏览 6 评论 0原文

我已成功使用 MakeSfxCA 在 C# 中创建了一个自定义操作,该操作大部分工作正常。

然而,有一些问题需要调试来解决。 (“printf-debugging”还不够。)

但是所有调试信息都会丢失。
当从 Visual Studio 项目调用 MakeSfxCA 时,.pdb 文件不会作为参数传递,因此创建的 CA-dll 中不包含调试信息。

如果我手动运行 MakeSfxCA,

MakeSfxCA MyDLL.CA.dll SfxCa.dll MyDLL.dll MyDLL.pdb CustomAction.config

则调试信息将包含在创建的自定义操作 dll 中。

如何让 WiX-CA-project 自动添加 pdb-info?

/莱夫

I have managed to create a custom action in C# using MakeSfxCA which is mostly working.

However, there is some kinks which needs debugging to sort out. (The "printf-debugging" just is not enough.)

However all debug info is lost.
When MakeSfxCA is called from the Visual Studio project the .pdb-file is not passed as an argument, so no debug-info is included in the created CA-dll.

If I manually run MakeSfxCA

MakeSfxCA MyDLL.CA.dll SfxCa.dll MyDLL.dll MyDLL.pdb CustomAction.config

then the debug-info is included in the created custom-action-dll.

How do I get the WiX-CA-project to add the pdb-info automatically?

/Leif

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

森林很绿却致人迷途 2024-09-04 00:55:48

我发现如果我创建了一个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

I found that if I created a project of the type C# Custom Action Project then it magically works.

Also I could probably have tried to add a Post-build event to my project. Something along the lines of:

"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

(Haven't tried this though, since I got it working as above.)

/L

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文