2011-01-05 84 views
1

我想現在如何重新啓動一個VSpackage,我的意思是如果它從零加載。我創建了一個與實際解決方案一起工作的擴展,當我需要更改爲其他解決方案時,擴展的狀態仍然存在,而我不想那樣做。直到現在,我關閉了IDE,然後再次以其原始狀態中的擴展名啓動它。有可能在不關閉IDE的情況下進行重置會更好。重新啓動一個VSpackage,就像它剛剛加載一樣

回答

2

一旦Visual Studio加載您的VSPackage二進制文件,它將保持加載到內存中,直到進程結束。這只是Visual Studio體系結構的一部分。

您應該更改您的擴展,以處理Visual Studio用戶在單個會話期間隨時間打開多個解決方案的事實。

您可以通過設計您的對象以使其與特定解決方案相關聯來實現此目的。

您可以通過IVsSolutionEvents interface在Visual Studio包中訂閱解決方案事件。當您收到解決方案已關閉的通知時,請銷燬與該解決方案關聯的對象。

+0

謝謝,好主意,我要去哪裏搜索以及如何添加處理程序到「關閉解決方案事件」,如果您知道哪裏請給我一個提示。要初始化工具我檢查解決方案是否開放,但關閉是一個壞主意不斷檢查該狀態。我需要找到那個事件。 – mjsr 2011-02-07 12:03:52

+2

您正在尋找的是IVsSolution活動。我在答案中添加了文檔的鏈接。 – 2011-02-08 14:33:45

相關問題