Cara mendapatkan model objek browser Web kerangka HTML

Terjemahan Artikel Terjemahan Artikel
ID Artikel: 196340
(c) Microsoft Corporation 1998, All Rights Reserved. Kontribusi oleh Scott Roberts, Microsoft Corporation.
Perbesar semua | Perkecil semua

RINGKASAN

Artikel ini rincian teknik standar browser web kontrol host dapat gunakan untuk mengakses browser web object model bingkai jendela dalam halaman HTML di dalam kontrol. Model objek ini menyediakan fungsionalitas tambahan yang tidak terkena untuk bingkai jendela melalui model objek HTML.

INFORMASI LEBIH LANJUT

Kode berikut menunjukkan cara mengakses browser web Object Model frame dalam halaman HTML untuk me-refresh isi setiap bingkai.

Bagian terpenting dari kode menggunakan IOleContainer::EnumObjects metode dari objek dokumen HTML untuk menghitung embeddings pada halaman. Masing-masing embeddings ini mewakili kontrol pada halaman. Oleh query masing-masing mengontrol objek untuk IWebBrowser2, kode ini dapat menentukan apakah kontrol adalah sub-frame. Dan IWebBrowser2 mewakili objek browser web Model; Jika QueryInterface berhasil untuk antarmuka ini, hasilnya adalah referensi untuk browser web Object 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();
}
Catatan Kontrol ActiveX yang di-host dalam halaman HTML dapat menggunakan teknik ini dalam cara yang sama. Secara umum, kontrol ActiveX yang mengakses tidak aman Browser web Object Model tidak aman untuk skrip dan harus menerapkan IObjectSafety antarmuka sesuai untuk keamanan.

Properti

ID Artikel: 196340 - Kajian Terakhir: 19 September 2011 - Revisi: 2.0
Kata kunci: 
kbFAQ kbhowto kbwebbrowser kbmt KB196340 KbMtid
Penerjemahan Mesin
PENTING: Artikel ini diterjemahkan menggunakan perangkat lunak mesin penerjemah Microsoft dan bukan oleh seorang penerjemah. Microsoft menawarkan artikel yang diterjemahkan oleh seorang penerjemah maupun artikel yang diterjemahkan menggunakan mesin sehingga Anda akan memiliki akses ke seluruh artikel baru yang diterbitkan di Pangkalan Pengetahuan (Knowledge Base) dalam bahasa yang Anda gunakan. Namun, artikel yang diterjemahkan menggunakan mesin tidak selalu sempurna. Artikel tersebut mungkin memiliki kesalahan kosa kata, sintaksis, atau tata bahasa, hampir sama seperti orang asing yang berbicara dalam bahasa Anda. Microsoft tidak bertanggung jawab terhadap akurasi, kesalahan atau kerusakan yang disebabkan karena kesalahan penerjemahan konten atau penggunaannya oleh para pelanggan. Microsoft juga sering memperbarui perangkat lunak mesin penerjemah.
Klik disini untuk melihat versi Inggris dari artikel ini:196340
Sanggahan Konten KB yang Tidak Lagi Diperbarui
Artikel ini berisi tentang produk yang tidak lagi didukung oleh Microsoft. Oleh karena itu, artikel ini disajikan ?sebagaimana adanya? dan tidak akan diperbarui.

Berikan Masukan

 

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