2008-09-11 5 views
1

매크로를 사용하여 솔루션을로드 할 때 열린 코드 창 (즉, 문서를 편집하는 창)을 열거하는 방법은 무엇입니까?비주얼 스튜디오 자동화 : 솔루션로드시 열린 창 열거

아마 알다시피 MSVS는 열린 문서를 기억합니다. 즉, 솔루션을로드하면 IDE는 이전에 열었던 파일을로드합니다. 내가 원하는 것은 솔루션 로딩시 해당 창을 사용하여 일부 작업을 수행하는 것입니다.

SolutionEvents_Opened 처리기에서이 창에 액세스하려고했습니다. 하지만 운이 없다 - 그것은 SolutionEvents_Opened가 호출 된 순간 언급 된 창을 사용할 수없는 것으로 보인다. DTE.Documents는 비어 있으며 DTE.Windows.Items에는 포함되어 있지 않습니다.

내가 좋아하는 몇 가지 코드가 필요 : 나는 창을 열거 발견했습니다

Private Sub SolutionEvents_Opened() Handles SolutionEvents.Opened 
    Dim window As Window = DTE.Documents.Item(?).Windows // one of the opened windows 
    ... 
End Sub 

답변

1

한 가지 방법은 DocumentEvents.DocumentOpened 이벤트에,하지만 그것은 단지 솔루션의로드하는 동안 항상하지를 발생합니다. 내 경험상 SolutionEvents.Opened가 전혀 작동하지 않는 것 같습니다. 그렇지 않으면 정적 변수가 변경 될 수 있습니다.

This 비록 설명이 도움이 될 수 있습니다.