Воспользовался мастером создания надстройки для создания проекта надстройки Visual C++/ATL.
Сгенерированный код:
HRESULT hr = S_OK;
pApplication->QueryInterface(__uuidof(DTE2), (LPVOID*)&m_pDTE);
pAddInInst->QueryInterface(__uuidof(AddIn), (LPVOID*)&m_pAddInInstance);`
Получите объект Events и WindowEvents:
m_pDTE->get_Events(&m_pEvents);
m_pEvents->get_WindowEvents(0, &m_pWinEvents);
Как добавить обработчик событий?
if (NULL != m_pWinEvents) {
m_pWinEvents += ????
}
Спасибо за любые подсказки или ссылки...
ОБНОВЛЕНИЕ, пробуя предложение Alien01:
m_pWinEvents->WindowActivated += new _dispWindowEvents_WindowActivatedEventHandler(this.WindowActivated);
1>Компиляция...
1>Connect.cpp
1>c:\work\visstudio_addin\cbaddin3\cbaddin3\connect.cpp(43): ошибка C2039: 'WindowActivated': не является членом ' EnvDTE::_WindowEvents'
1> c:\work\visstudio_addin\cbaddin3\cbaddin3\debug\dte80a.tlh(1006): см. объявление 'EnvDTE::_WindowEvents'
1>c:\work\visstudio_addin \cbaddin3\cbaddin3\connect.cpp(43): ошибка C2061: синтаксическая ошибка: идентификатор '_dispWindowEvents_WindowActivatedEventHandler'