HRESULT STDMETHODCALLTYPE Navigate2(
/* [in] */ VARIANT __RPC_FAR *URL,
/* [optional][in] */ VARIANT __RPC_FAR *Flags,
/* [optional][in] */ VARIANT __RPC_FAR *TargetFrameName,
/* [optional][in] */ VARIANT __RPC_FAR *PostData,
/* [optional][in] */ VARIANT __RPC_FAR *Headers) = 0;
Несколько вопросов (может интересных)
Вот появилось несколько вопросов, на которые хотелось бы получить ответы. Заранее спасибо.
1. Можно ли как-то зная HWND окна, проверить, является ли оно окном IE и подключиться к его событиям (а именно к переходу на новую страницу - onNavigate)
2. Пишу COM, используя ATL COM AppWizzard в VS 6. Оно подключает в каждый файл "stdafx.h". Так вот вопрос, использует ди оно MFC или это файл означает что-то другое?
3. У IWebBrowser2 есть метод Navigate2().
Код:
В своей программе я получаю такой интерфейс (IWebBrowser2). Но при вызове метода или ничего не происходит, или не компилится (в зависимости от параметров).
Код:
VARIANT a;
VARIANT b;
m_WBrowser2->Navigate( L"link", &a, &b, NULL, NULL);
VARIANT b;
m_WBrowser2->Navigate( L"link", &a, &b, NULL, NULL);
В чем может быть причина?
Вот появилось несколько вопросов, на которые хотелось бы получить ответы. Заранее спасибо.
1. Можно ли как-то зная HWND окна, проверить, является ли оно окном IE и подключиться к его событиям (а именно к переходу на новую страницу - onNavigate)
2. Пишу COM, используя ATL COM AppWizzard в VS 6. Оно подключает в каждый файл "stdafx.h". Так вот вопрос, использует ди оно MFC или это файл означает что-то другое?
3. У IWebBrowser2 есть метод Navigate2().
Код:
HRESULT STDMETHODCALLTYPE Navigate2(
/* [in] */ VARIANT __RPC_FAR *URL,
/* [optional][in] */ VARIANT __RPC_FAR *Flags,
/* [optional][in] */ VARIANT __RPC_FAR *TargetFrameName,
/* [optional][in] */ VARIANT __RPC_FAR *PostData,
/* [optional][in] */ VARIANT __RPC_FAR *Headers) = 0;
/* [in] */ VARIANT __RPC_FAR *URL,
/* [optional][in] */ VARIANT __RPC_FAR *Flags,
/* [optional][in] */ VARIANT __RPC_FAR *TargetFrameName,
/* [optional][in] */ VARIANT __RPC_FAR *PostData,
/* [optional][in] */ VARIANT __RPC_FAR *Headers) = 0;
В своей программе я получаю такой интерфейс (IWebBrowser2). Но при вызове метода или ничего не происходит, или не компилится (в зависимости от параметров).
Код:
VARIANT a;
VARIANT b;
m_WBrowser2->Navigate( L"link", &a, &b, NULL, NULL);
VARIANT b;
m_WBrowser2->Navigate( L"link", &a, &b, NULL, NULL);
В чем может быть причина?[/QUOTE]
1. Думаю, можно примерно так. Зная идентификатор окна, выясни его класс (имя класса). Если оно совпадает с именем класса окна IE, это оно. Подключаться к событиям в принципе тоже можно. Читай msdn: subclassing, superclassing, hooks.
2. Его использует Визард. Создаешь проект вручную - такого файла обычно нет.