Ako získať WebBrowser objektový model HTML rámu

Preklady článku Preklady článku
ID článku: 196340
(c) Microsoft Corporation 1998, všetky práva vyhradené. Príspevky Scott Roberts, Microsoft Corporation.
Rozbaliť všetko | Zbaliť všetko

SUHRN

Tento článok podrobnosti štandardné technika WebBrowser kontrolu hostiteľov možno použiť na prístup k WebBrowser objektový model rám Windows v HTML stránke vo vnútri ovládacieho prvku. Tento objekt model poskytuje extra funkcie, ktorá je neboli vystavení rám okna prostredníctvom objektového modelu HTML.

DALSIE INFORMACIE

Nasledujúci kód preukáže ako prístup WebBrowser objektový Model rámcov v HTML stránke obnoviť obsah každý rám.

Najdôležitejšie kus kódu používa IOleContainer::EnumObjects metódu objektu dokument HTML enumerácia embeddings na stránke. Každý z týchto embeddings predstavuje ovládací prvok na stránke. Zaslanie dotaze každý ovládanie objekt IWebBrowser2, tento kód môžete určiť, či kontrola je olejovú. A IWebBrowser2 predstavuje WebBrowser objekt Modelu; Ak funkcia QueryInterface úspešné pre toto rozhranie, výsledkom je odkaz na WebBrowser objektový Model.
// 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();
}
Poznámka: Ovládacie prvky ActiveX hostila v HTML stránke môžete použiť túto techniku v podobným spôsobom. Vo všeobecnosti, ovládací prvok ActiveX, ktorý pristupuje nebezpečné WebBrowser objektový Model nie je bezpečné pre skriptovanie a by mali vykonávať Preto rozhranie IObjectSafety, vďaka za bezpečnosť.

Vlastnosti

ID článku: 196340 - Posledná kontrola: 19. októbra 2011 - Revízia: 2.0
Kľúčové slová: 
kbFAQ kbhowto kbwebbrowser kbmt KB196340 KbMtsk
Strojovo preložené
DÔLEŽITÉ: Tento článok bol preložený pomocou softvéru na strojový preklad od spoločnosti Microsoft, nie prekladateľom. Spoločnosť Microsoft ponúka články preložené prekladateľmi aj strojovo preložené články, vďaka čomu máte možnosť prístupu ku všetkým článkom databázy Knowledge Base vo svojom jazyku. Strojovo preložený článok však nie je vždy perfektný. Môže obsahovať chyby týkajúce sa slovnej zásoby, syntaxe alebo gramatiky, podobne ako cudzinec môže robiť chyby, keď rozpráva vašim jazykom. Spoločnosť Microsoft nenesie zodpovednosť za akékoľvek nepresnosti, chyby alebo škody spôsobené akýmkoľvek nepresným prekladom obsahu alebo jeho použitím zo strany zákazníkov. Spoločnosť Microsoft softvér na strojový preklad pravidelne aktualizuje.
Pokiaľ chcete vidieť anglickú verziu článku, kliknite sem:196340
Upozornenie na neaktuálny obsah článku databázy KB
Tento článok obsahuje informácie o produktoch, pre ktoré spoločnosť Microsoft už neposkytuje technickú podporu. Z tohto dôvodu je tento článok publikovaný ako nezmenený a už nebude aktualizovaný.

Odošlite odozvu

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com