无法使用visual studio 2013debugging托pipe代码(“无法评估expression式”错误 – 我正在使用debugging版本)(请注意VS 2012的工作原理)

我有.net应用程序(GUI以及PowerShell)对4.5。 我的操作系统是2012年的服务器。当我将我的应用程序附加到2013 visual studio,debugging器有时不工作。 它不评估expression式或显示当地人(也观察窗口/立即窗口没有什么作用 – 就好像该项目是build立在发布)。 但是我用“debugging”configuration来构build。 正如前面提到过的那样,当我简单地附上VS 2012(是的,我有2k13和2k12 SXS)

请注意,如果我使用相同的设置(托pipedebugging)将相同的进程附加到Visual Studio 2012,它始终可以正常工作。

我确定符号被加载(通过在Visual Studio +debugging+窗口检查模块选项卡),中断点击中。

任何想法可能是什么问题? 所有的更新都是最新的。

它的一种恼人的启动VS 2012只是debugging,当我使用VS 2k13 IDE进行开发。

问候!

如果您遇到同样的问题,请查看http://weblog.west-wind.com/posts/2013/Nov/21/Visual-Studio-2013-Could-not-evaluate-Expression-Debugger-Abnormality以了解详情。;

这是为我解决的答案:

我在Tools |中设置了“使用托pipe兼容模式”标志 选项| debugging器| 一般。

有关详细信息,请看他的链接,他很好地解释为一个故事:)

我很高兴它的工作,否则我只是不得不加载项目在vs 2k12只是为了debugging这是令人讨厌的。

编辑于2014年6月12日

我用Visual Studio 2013更新2http://www.microsoft.com/en-us/download/details.aspx?id=42666 )更新了我的开发环境(按照Maria的build议),并删除了“使用托pipe兼容性模式”。 我将testing我的应用程序(ps cmdlets,gui,服务),并在几个星期内更新你,如果debugging器对我来说是好的。

编辑在2014年6月26日

我已经testing了我的应用程序,幸运的是我一切正常工作:)。 甚至debugging器在新的asynchronous/等待模型上也做得很好。 所以,看看你是否可以升级到“更新2” – 希望这也适用于你的环境? 感谢Maria和debugging人员的团队!

问候。

我删除了所有的断点,然后开始使用Visual Studio 2013 Update 1工作。这是Dreamer提到的博客文章中的一个build议。

我们针对您在Visual Studio Update 2 CTP 2中描述的问题发布了一个修复程序 –
请让我知道如果这不能解决您的问题!

谢谢! 玛丽亚 – Visual Studiodebugging器

请注意,虽然接受的答案可能会解决现在的问题,但最好是意识到这个解决scheme的缺点。 做这个改变将使VS 2013在你所有的项目中使用旧式的debugging器。 这是一个全球性的环境。 还有其他方法可以在单个项目中进行本地更改。 请阅读这里了解更多信息:

http://blogs.msdn.com/b/visualstudioalm/archive/2013/10/16/switching-to-managed-compatibility-mode-in-visual-studio-2013.aspx

我们有一个自定义expression式评估器和我们自己的语言,即使将项目设置更改为博客中指定的项目设置后,此警告消息也会始终显示。

  <DebugEngines>{351668CC-8477-4fbf-BFE3-5F1006E4DB1F}</DebugEngines> 

还有别的吗?

我们的客户正在使用VS2013亲。 我已经closures了所有项目的“启用Visual Studio托pipe过程”,并将该属性添加到我们的客户项目中。 每当我攻击w3wp.exe时,我仍然看到警告。

重要提示:如果您的项目正在使用Visual Studio托pipe进程(许多项目types的默认设置),则必须禁用此修复程序的托pipe进程才能正确更改debugging模式。 要禁用宿主进程,请转至项目属性页面上的“debugging”窗格,然后取消选中“启用Visual Studio宿主进程”

您可以通过应用以下几点来解决此错误

溶胶1:

1)重新启动Visual Studio并重新打开您的项目。
2)打开你的项目bin目录,并删除你的debugging器工作不正常的代码的DLL。
3)然后再次在bin目录中添加DLL引用。
4)删除所有的断点。
5)build设项目。
6)附加一个 w3wp.exe进程附加到进程窗口
7)享受你的问题已经解决。

如果上述解决scheme不起作用,那么您可以尝试下面的链接提供的解决scheme
http://weblog.west-wind.com/posts/2013/Nov/21/Visual-Studio-2013-Could-not-evaluate-Expression-Debugger-Abnormality

我有一个类似的问题debugging,从创build类的返回发生此错误。 该类初始化罚款(使用“新的classname()”),但它给了“无法评估expression式”错误的回报。 虽然它在以前的视觉工作室版本上运行,但在VS 2017上运行,它被淘汰了。

经过大量的敲打之后,事实certificate, 中的私有variables,尤其是数组列表和其他类中的私有variables,即使设置为null,也需要用初始值声明

一旦完成,一切都奏效了,尽pipe解决scheme“似乎”与问题没有任何关系,也没有明确提示问题出在哪里。

使用VS2013 Update 5的PostSharp扩展版本5.0.32,我们遇到了这个问题。

我们的解决方法是将PostSharp扩展降级到版本4.3.19或将其禁用。