1

Visual Studio 2008(EnvDTE90)とVisual Studio 2008 SP1(EnvDTE90a)でこれを行うことに誰もが同じことを知っていますか?Visual Studio 2008と2008 SP1アドイン:EnvDTE90とEnvDTE90aを使用

//this is code for Visual Studio 2005, works great 
    EnvDTE80.DTE2 dte2 = (EnvDTE80.DTE2)System.Runtime.InteropServices.Marshal. 
    GetActiveObject("VisualStudio.DTE.8.0"); 

    foreach (EnvDTE80.Breakpoint2 bp in dte2.Debugger.Breakpoints) 
    { 
     //do some things 
    } 

私は通常のGoogle検索を行い、さまざまなことを見つけましたが、いずれも機能しませんでした。

EnvDTE90.Debugger3は、積極的にデバッグする場合にのみ動作するようです。いつでもブレークポイントにアクセスしたいですか?

注記:SHOULDが動作する既存のコード例へのリンクを送信しないでください。私は見つけることができるすべてを試みました。

答えて

0

私はついにいくつかのコードが動作しました。 KristoferAの答えは、同じAPIを使用できる点で部分的に正しいですが、コードはそのままでは機能しません。これは私がうまく動作する方法です:

EnvDTE80.DTE2 dte2 = (EnvDTE80.DTE2)System.Runtime.InteropServices.Marshal. 
GetActiveObject("VisualStudio.DTE.9.0"); 

foreach (EnvDTE80.Breakpoint2 bp in dte2.Debugger.Breakpoints) 
{ 
    //do some things 
} 
3

VS2005コード(EnvDTE80)もVS2008でも正常に動作するはずです。 EnvDTE90はいくつかの新しい機能を追加するだけですが、EnvDTE80とEnvDTEは基本的にはまだ必要です。

+0

同じVS 2005コードは、あなたが質問に表示されるVS 2008で動作しません。 –

+0

+1部分的に正しい –

関連する問題