Я хочу создать собственное браузерное приложение с собственным значением User-Agent.
Браузер на основе CHtmlView. MFC.
Но существует странная проблема с User-Agent из Ajax-запросов ...
Я сделал:
Значение User-Agent используется в качестве аргумента для Navigate (). А Navigate () запрашивает право использования User-Agent.
Перегрузка метода OnAmbientProperty () класса CHtmlView.
BOOL MyHtmlView::OnAmbientProperty(COleControlSite *pSite,
DISPID dispid, VARIANT *pvar)
{
USES_CONVERSION;
// Change user agent for this web browser host during hyperlinks
if (dispid == DISPID_AMBIENT_USERAGENT)
{
pvar->vt = VT_BSTR;
pvar->bstrVal = ::SysAllocString(m_userAgent);
return TRUE;
}
return CHtmlView::OnAmbientProperty(pSite, dispid, pvar);
}
Это решит проблему с гиперссылкой.
Но я должен использовать этот браузер для некоторых приложений Ajax.
И вот проблема. Для запросов Ajax используется оригинальное значение IE User-Agent.
Мой ПК на базе WinXP с IE7.
Есть идеи, как это решить?
Как изменить User-Agent для любого запроса из моего браузера?
Спасибо!