条件断点失败

Conditional Breakpoint failed

提问人:Charlie P 提问时间:10/19/2023 更新时间:10/20/2023 访问量:21

问:

我正在用 c# 创建一个 dll,它将成为主机应用程序 Revit 的插件。我在尝试调试某些问题时在代码中设置了条件断点。这是我的调试过程:

  • 构建我的 dll
  • 生成事件后,将新文件复制到相应的加载项文件夹
  • 我手动启动 Revit 并打开用于测试的文件
  • 在 Visual Studio 中,我选择“调试”->“附加到进程”-> Revit.exe
  • 我在Revit中单击该按钮以启动该命令。

我在管理员模式下运行 Visual Studio 2022 专业版,而 Revit 在用户模式(即不是管理员模式)下运行。

当没有断点时,代码运行良好。当我设置条件断点时,我收到以下错误。我试图做的是在特定字符串为“volume”时命中断点

任何关于该主题的启示将不胜感激。

enter image description here

Visual-Studio Autodesk Revit-API 条件断点

评论


答:

1赞 Jeremy Tammik 10/20/2023 #1

我建议您不要在外部启动 Revit.exe,而是在 Visual Studio 调试设置中将其设置为启动程序。然后,您无需附加到进程。这就是我一直在做的事情。

评论

1赞 Charlie P 10/21/2023
感谢Jeremy的建议,它们总是很有价值的。我曾经按照您的建议启动Revit作为启动程序,但是当我在管理员模式下运行Visual Studio时,这会在admin用户下启动revit,因此我无法在典型用户设置下调试应用程序。这可能会导致我出现一些误报。我确实研究了是否可以在非管理员模式下启动启动程序,同时在管理员模式下运行 Visual Studio,但这似乎是不可能的,因此我为什么要这样做,正如我上面提到的。
0赞 Jeremy Tammik 10/22/2023
在非管理员模式下运行 Visual Studio 怎么样?这就是我的工作。
0赞 Charlie P 10/23/2023
感谢Jeremy的建议。当我在非管理员模式下运行 VS 时,我无法运行构建后事件(IT 安全策略阻止批处理脚本)。当我在管理员模式下运行 VS 时,我不会被 IT 策略阻止。
0赞 Jeremy Tammik 10/24/2023
也许您可以将调试和后期构建内容拆分为单独的步骤?