正在執行我解決不了我的問題之前,我希望有人知道如何...如何編輯HTML(標籤),通過CppWebBrowser
我有一個組件上我的形式TCppWebBrowser,當我瀏覽到一個URL,在文檔被下載之後,在方法OnDocumentComplete()中,我試圖檢查並更改加載文檔的HTML源代碼,然後由瀏覽器執行。
我需要,因爲一些網站有背景聲音,我想解析html和刪除標籤或只是刪除包含聲音文件如* .wav,* .mid,* .swf,* .mp3的文本..等。
例如,如果HTML源代碼這一行:
<NOEMBED><BGSOUND src="/images/ImagineCut.wav"></NOEMBED>
然後,我將其更改爲:
<NOEMBED><BGSOUND src="/images/ImagineCut."></NOEMBED>
或者我可以刪除整個標籤。
使用這種方法我想靜音瀏覽器甚至停止播放聲音。請考慮此方法,因爲它會幫助我避免所有種類的聲音後,我編輯HTML ..(瀏覽器之前執行它)
這就是我試圖做的:
void __fastcall TForm1::CppWebBrowser1DocumentComplete(TObject *Sender,
LPDISPATCH pDisp, Variant *URL)
{
IHTMLDocument2 *pHTMLDoc;
CppWebBrowser1->Document->QueryInterface(IID_IHTMLDocument2,(LPVOID*)&pHTMLDoc);
IHTMLElement *pElem;
pHTMLDoc->get_body(&pElem);
BSTR text;
pElem->get_innerHTML(&text);
text = Cleaning(text); //checking and changing html without souds
pElem->put_innerHTML(text);
pElem->Release();
pHTMLDoc->Release();
}
DLCTL_BGSOUNDS有什麼問題? –
問題是,網站有很多方法來附加背景聲音,但DLCTL_BGSOUNDS並沒有解決它成功的各種背景聲音。我已經嘗試了這種方法,並且我可以說這不好,如果我在webbrowser執行之前自己清理html代碼,那麼我可以刪除聲音擴展,並且webbrowser將無法播放它們。 – ManY