2011-11-01 91 views
0

我創建工具欄usign的BHO.And中,我想修改的用戶代理字符串中的IE如下:追加自定義字符串只有

當前字符串:Mozilla的/ 4.0(兼容; MSIE 7.0; Windows NT 6.0)
需要字符串:CustomName,Mozilla/4.0(兼容; MSIE 7.0; Windows NT 6.0)

這裏我想在Mozilla/4.0文本之前添加自定義名稱。那我該怎麼做呢? 我需要在註冊表中的「用戶代理」鍵做出什麼改變,或者我需要對其他註冊表鍵進行更改?

感謝,

回答

0

在託管Web瀏覽器(的IWebBrowser2/CWebBrowser2 /等)您的對話框/窗口中,你只需要重寫OnAmbientProperty。它是CWnd的虛擬方法部分。

BOOL CMyLoginDlg::OnAmbientProperty(COleControlSite* pSite, DISPID dispid, 
    VARIANT* pvar) 
{ 
    if (dispid == DISPID_AMBIENT_USERAGENT) 
    { 
     CString strUserAgent("CustomName, Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0)"); 

     pvar->vt = VT_BSTR; 
     pvar->bstrVal = strUserAgent.AllocSysString(); 

     return TRUE; 
    } 

    return __super::OnAmbientProperty(pSite, dispid, pvar); 
} 

這應該做到這一點!