web-dev-qa-db-ja.com

Visual Studio Community 2015デバッガーは、「ネイティブメソッドの評価はサポートされていません」という条件付きブレークポイントで終了します-どのように修正すればよいですか?

条件付きブレークポイントがあり、条件は文字列の値をチェックし、trueの場合は停止します。停止しますが、ウィンドウが開いて次のように表示されます。

The condition for a breakpoint failed to execute ... The error returned was 'Evaluation of method System.Collections.Specialized.NameValueCollection.get_Item() calls into native method 'System.Globalization.TextInfo.Internal.GetCaseInsHash(). Evaluation of native methods in this context is not supported.'. Click OK to stop at this breakpoint.

回答を検索しましたが、マネージ互換モードを有効にすると機能しませんでした。

14
Questioner

プロジェクトのデバッグ設定で[Visual Studioホスティングプロセスを有効にする]をオンにすると、この問題は解決しました。

5
Chris

次のように、手動でブレークポイントをコードに追加することもできます...

if (conditionThatMeansStop) 
{
    System.Diagnostics.Debugger.Break();
}

それが私が回避した方法です...

Evaluation of method System.String.op_Equality calls into the native method System.Environment.FailFast()

...同様の状況で、文字列の値をチェックする条件付きエンドポイントを設定しようとしていました。

3
ruffin