2011-01-27 88 views
4

我正在研究C#COM组件。这个组件是从应用程序插件调用的,当我手动将调试器附加到应用程序时,它停在断点上。但是,当我使用Visual Studio调试命令(F5键)并在项目调试器设置中指定“启动外部程序”时,Visual Studio不会在断点上停止。Visual Studio 2010在调试C#COMVisible类方法时不会停止在断点上

简而言之: *设置断点,编译,启动应用程序,附加调试器调试“托管(v2.0,v1.1,v1.0)代码”,exec插件方法 - VS停在断点上。 *设置断点,指定启动外部程序,按F5 - 应用程序启动,exec插件方法 - VS跳过断点。 “附加到...”命令显示ProteusDebugEngine而不是某种托管代码。

+0

选中此项:http://vvvv.org/forum/plugin-debugging-in-visual-studio-2010 – 2011-01-27 23:26:01

回答

3

问题是调试器无法确定要使用哪个引擎,因为启动的应用程序不是受管理的应用程序。所以它默认为4.0引擎。你必须通过明确地告诉它需要使用哪个运行时,告诉调试器你需要一个不同的引擎。

为您想要调试的应用程序创建或编辑配置文件并向其添加SupportedRuntime元素。

<?xml version ="1.0"?> 
<configuration> 
    <startup>   
    <supportedRuntime version="v2.0.[version on your machine]" /> 
    </startup> 
</configuration> 

请参阅MSDN blog entry

+0

MSDN链接已损坏... – AnthonyLambert 2012-04-11 09:19:07

相关问题