2011-04-18 124 views
0

我正在編寫一個可以在調試器啓動時激活的Visual Studio插件。加載項需要檢查當前正在運行的項目的項目設置,並特別閱讀該選項卡底部的Web選項卡上指出調試器的複選框。我想每次閱讀項目設置並確定每次調試器啓動「ASP.NET」「本機代碼」「SQL Server」「Silverlight」「啓用編輯並繼續」複選框時檢查哪些複選框。從Visual Studio 2010加載項讀取當前項目設置?

我已經通過SDK中的例子沒有發現任何具體讀取項目設置。如果有人能指出我的方向是有益的。

回答

1

事實證明,答案比我想象的要容易。 「項目屬性」窗口的「Web」選項卡中的「Web配置」僅在使用Web項目時可用。 Web項目是一個擴展。要訪問項目中的Extender,您可以使用下面的代碼訪問它。

Microsoft.VisualStudio.Web.Application.WAProjectExtender extend = null; 

foreach (object item in (Array)project.ExtenderNames) 
{ 
    extend = project.Extender[ item.ToString() ] as Microsoft.VisualStudio.Web.Application.WAProjectExtender; 
    if (extend != null) 
    { 
     return extend.SilverlightDebugging; 
    } 
} 

的Class Microsoft.VisualStudio.Web.Application.WAProjectExtender包含所有屬性的命名很好易於訪問的性能。因此,查明SilverlightDebugging是否被選中,就像檢查extend.SilverlightDebugging一樣簡單。我爲應用程序對象編寫了一個擴展,它將給我當前的項目,然後使用該擴展器來很好地轉換到WAProjectExtender。該類位於我的系統上位於E:\ Program Files(x86)\ Microsoft Visual Studio 10.0 \ Common7 \ IDE \ Microsoft.VisualStudio.Web.Application.dll的IDE特定程序集內部,位於