DetailPage-MSS-KB

Knowledge Base

Artikel ID: 196340 - Laatste beoordeling: zaterdag 26 februari 2011 - Wijziging: 2.0

 
(c) Microsoft Corporation 1998, alle rechten voorbehouden. Bijdragen door Scott Dorner, Microsoft Corporation.

Samenvatting

De details van dit artikel de standaard techniek WebBrowser controle hosts kunt gebruiken voor toegang tot het objectmodel van de WebBrowser Windows frame in een HTML-pagina in het besturings element. Dit objectmodel biedt extra functionaliteit niet beschikbaar voor het framevenster via het objectmodel voor HTML.

Meer informatie

De volgende code toont hoe u toegang tot het Object Model van de WebBrowser frames in een HTML-pagina vernieuwt u de inhoud van elk frame.

Het belangrijkste stuk van het Wet boek wordt gebruikt voor de IOleContainer::EnumObjects de methode van het HTML-Document-object opgesomd, insluitingen op de pagina. Elk van deze insluitingen vertegenwoordigt een besturings element op de pagina. Door elk opvragen object voor kan IWebBrowser2, bepalen deze code kunt vasts tellen of de besturings element is een sub-frame. En kan IWebBrowser2 vertegenwoordigt de WebBrowser Model; Als QueryInterface voor deze interface slaagt, het resultaat is een verwijzing naar het Object Model van de WebBrowser.
// Get the IDispatch of the document
LPDISPATCH lpDisp = NULL;
lpDisp = m_webBrowser.GetDocument();

if (lpDisp)
{
   IOleContainer* pContainer;

   // Get the container
   HRESULT hr = lpDisp->QueryInterface(IID_IOleContainer,
                                       (void**)&pContainer);
   lpDisp->Release();

   if (FAILED(hr))
      return hr;

   IEnumUnknown* pEnumerator;

   // Get an enumerator for the frames
   hr = pContainer->EnumObjects(OLECONTF_EMBEDDINGS, &pEnumerator);
   pContainer->Release();

   if (FAILED(hr))
      return hr;

   IUnknown* pUnk;
   ULONG uFetched;

   // Enumerate and refresh all the frames
   for (UINT i = 0; S_OK == pEnumerator->Next(1, &pUnk, &uFetched); i++)
   {
      IWebBrowser2* pBrowser;

      hr = pUnk->QueryInterface(IID_IWebBrowser2, (void**)&pBrowser);
      pUnk->Release();

      if (SUCCEEDED(hr))
      {
         // Refresh the frame
         pBrowser->Refresh();
         pBrowser->Release();
      }
   }

   pEnumerator->Release();
}
OpmerkingActiveX-besturingselementen die zijn ondergebracht in een HTML-pagina kunt u deze techniek in een soortgelijke wijze. In het algemeen, die toegang heeft tot de onveilige ActiveX-besturingselement WebBrowser-objectmodel is niet veilig voor script gebruik en te implementeren IObjectSafety dienovereenkomstig interface voor beveiliging.
Trefwoorden: 
kbFAQ kbhowto kbwebbrowser kbmt KB196340 KbMtnl
Machine-translated ArticleMachine-translated Article
BELANGRIJK: Dit artikel is vertaald door de vertaalmachine software van Microsoft in plaats van door een professionele vertaler. Microsoft biedt u professioneel vertaalde artikelen en artikelen vertaald door de vertaalmachine, zodat u toegang heeft tot al onze knowledge base artikelen in uw eigen taal. Artikelen vertaald door de vertaalmachine zijn niet altijd perfect vertaald. Deze artikelen kunnen fouten bevatten in de vocabulaire, zinsopbouw en grammatica en kunnen lijken op hoe een anderstalige de taal spreekt en schrijft. Microsoft is niet verantwoordelijk voor onnauwkeurigheden, fouten en schade ontstaan door een incorrecte vertaling van de content of het gebruik ervan door onze klanten. Microsoft past continue de kwaliteit van de vertaalmachine software aan door deze te updaten.
De Engelstalige versie van dit artikel is de volgende:196340  (http://support.microsoft.com/kb/196340/en-us/ )
Ingetrokken KB-artikelVrijwaring inhoud KB-artikelen over niet langer ondersteunde producten
Dit artikel heeft betrekking op producten waarvoor Microsoft geen ondersteuning meer biedt. Daarom wordt dit artikel alleen in de huidige vorm aangeboden en wordt het niet meer bijgewerkt.
Delen
Extra ondersteuningsopties
Microsoft Community Support-forums
Neem rechtstreeks contact met ons op
Een door Microsoft gecertificeerde partner zoeken
Microsoft Store