2

我目前正在将 VBA PowerPoint 加载项迁移到 VSTO。

几个星期以来,我一直在为 COM 对象使用 Visual Studio 调试工具。如下图所示,对象类型显示为 {system._ComObject} 并且对象检查成为一项挑战,因为必须使用动态视图,我认为这很不方便。

调试 COM 对象

环顾四周,我发现了在常规调试设置中激活“使用托管代码兼容模式”选项的建议,正如您在调试设置中看到的那样, 我还遵循了另一个建议,在所有我的办公室相关引用虚假。

应用这些更改后。瞧!检查开始按照我的意愿工作,正如您在此处看到的那样:调试正常工作

我几乎在天堂。我的狂喜一直持续到我在调试期间尝试更改一些代码,并被 Visual Studio 告知“托管兼容模式不支持编辑并继续”。

现在我又回到了地狱。通过编辑并继续,我错过了一个体面的 COM 对象检查。通过 COM 检查,我无法在调试期间更改代码。

这种情况看起来很尴尬,我对 VS 2017 的期望更高。

有谁知道我怎样才能获得体面的 COM 检查和编辑并同时继续?

4

1 回答 1

0

有谁知道我怎样才能获得体面的 COM 检查和编辑并同时继续?

恐怕你得不到你想要的。

由于您只是调试一个 com 对象,它更像是优化、混合或 SQL Server 公共语言运行时 (CLR) 集成代码(使用),正如官方文档所说,Edit and Continue功能不支持它。

通常,要在VS中调试这些混合代码,您应该启用Use Managed Compatibility Mode启用本机代码调试,但是这些选项不能像官方文档所说的那样与Edit and Continue一起使用。

您可以查看此文档以了解不受支持的更改或受支持的代码更改。

因此,对于您的问题,没有这样的选项可以同时使用它们。

作为建议,您应该先中断调试过程,对代码进行一些更改。然后开始调试以调试新的更改。

此外,如果您仍然想要此功能,您可以在我们的用户语音论坛上推荐一个功能。团队会仔细检查您的要求,希望他们能给您满意的答复。

于 2020-08-05T08:34:38.043 回答