-1
A
回答
0
很久以前,我已經找到解決辦法了訪問BHO的方法同樣的問題,但這只是BHO的一次性實驗,所以今天很難記住該做什麼。但我可以給你這段代碼作爲進一步搜索的起點。
void CEventSink::Event_NavigateComplete(IDispatch *pDisp, LPOLESTR url)
{
HRESULT hr;
IDispatch *pTmpDisp;
IWebBrowser2 *pFrame;
hr = pDisp->QueryInterface(IID_IWebBrowser2, (void **)&pFrame);
if (FAILED(hr) || !pFrame)
return;
hr = pFrame->get_Document(&pTmpDisp);
if (FAILED(hr) || !pTmpDisp)
return;
IHTMLDocument2 *pDocument;
hr = pTmpDisp->QueryInterface(IID_IHTMLDocument2, (void **)&pDocument);
if (FAILED(hr) || !pDocument)
return;
IHTMLWindow2 *pWindow;
pDocument->get_parentWindow(&pWindow);
if (FAILED(hr) || !pWindow)
return;
IDispatchEx *pDispEx;
hr = pWindow->QueryInterface(IID_IDispatchEx, (void **)&pDispEx);
if (FAILED(hr) || !pDispEx)
return;
DISPID dispId;
BSTR name = SysAllocString(_T("someMethod"));
pDispEx->GetDispID(name, fdexNameEnsure, &dispId);
SysFreeString(name);
if (FAILED(hr) || dispId == DISPID_UNKNOWN)
return;
hr = this->QueryInterface(IID_IDispatch, (void **)&pTmpDisp);
if (FAILED(hr) || !pTmpDisp)
return;
VARIANT v;
VariantInit(&v);
v.vt = VT_DISPATCH;
v.pdispVal = pTmpDisp;
DISPID ppid = DISPID_PROPERTYPUT;
DISPPARAMS p;
p.rgvarg = &v;
p.cArgs = 1;
p.rgdispidNamedArgs = &ppid;
p.cNamedArgs = 1;
hr = pDispEx->InvokeEx(dispId, LOCALE_USER_DEFAULT,
DISPATCH_PROPERTYPUT, &p, NULL, NULL, NULL);
}
相關問題
- 1. 瀏覽器輔助對象無法正常工作
- 2. 如何從我的瀏覽器訪問我的riak-cs對象
- 3. 瀏覽器助手對象和AJAX
- 4. 部署瀏覽器助手對象
- 5. Windows Phone 7瀏覽器助手對象?
- 6. 瀏覽器助手對象UI
- 7. 命名瀏覽器助手對象
- 8. 瀏覽器助手對象不工作?
- 9. VS2012對象瀏覽器顯示我無法訪問的成員
- 10. 如何使輔助方法檢查對象的存在狀態?
- 11. 如何訪問Iframe的父窗口的方法[Chrome瀏覽器]
- 12. 在IE瀏覽器輔助對象,強制IWebBrowser2.Navigate2在新窗口中
- 13. 如何從noeval控制器訪問內置的Compoundjs輔助方法?
- 14. 如何更改瀏覽器訪問git幫助頁面?
- 15. 無法從輔助模塊訪問IMAGE_TAG
- 16. 如何啓動bho(瀏覽器助手對象)編程
- 17. 從量角器訪問窗口對象/瀏覽器範圍
- 18. 如何訪問firefox瀏覽器的object.style.filter?
- 19. 如何從瀏覽器訪問Android
- 20. 瀏覽內容輔助列表在Eclipse
- 21. 如何從另一個輔助方法中調用Rails輔助方法?
- 22. 瀏覽器助手對象無法加載模塊?
- 23. 使用對象和訪問器方法
- 24. 訪問器方法對象管理?
- 25. Netbeans對象瀏覽器等效於Visual Studio對象瀏覽器
- 26. Appium無法訪問瀏覽器異常
- 27. Docker tomcat無法從瀏覽器訪問
- 28. 如何爲插件提供對輔助函數的訪問?
- 29. 以編程方式啓用對輔助設備的訪問
- 30. 如何初始化輔助方法?
您需要*真正*澄清您的問題。根據[「如何問」指南](http://stackoverflow.com/questions/how-to-ask),你需要比這更具體。 –