Makale numarası: 294870 - Son Gözden Geçirme: 11 Mayıs 2006 Perşembe - Gözden geçirme: 3.0

Hata: Bazı örnekler her zaman aynı pencerede başvurularda Document.NewWindow veya NewWindow2 kullanarak başarısız

Sistem İpucuBu makale, kullandığınızdan farklı bir işletim sistemine yöneliktir. Sizinle ilgili olmayabilecek makale içeriği devre dışı bırakıldı.

Bu Sayfada

Hepsini aç | Hepsini kapa

Belirtiler

WebBrowser denetimi ana bilgisayar, her zaman aynı pencerede gerçekleşmesi için Gezinti isteyebilirsiniz. Bu durumda, gezinti iptal etmek için Document.NewWindow veya NewWindow2 bildirim işleyebilir. Ancak Document.NewWindow ve NewWindow2 olayları beklendiği gibi her zaman çalışmaz.

Internet Explorer 5.5 belirtileri

ınternet Explorer 5. 5'te Document.NewWindow olayını kullandığınızda, aşağıdaki sorunlarla karşılaşabilirsiniz:
  • Yeni bir siteye göz window.open yöntemini gerçekleştiren bir bağlantıyı tıklatın, <a1>site</a1> ilk zaman başarıyla göz atabilirsiniz; ancak ikinci kez başarısız olur.
  • Bir bağlantıyı sağ tıklatın ve sonra Yeni Pencerede Aç ' ı tıklatın, ilk kez çalışır ancak sonraki girişimler üzerinde çalışmaz.
ınternet Explorer 5. 5'te NewWindow2 olayını kullandığınızda, aşağıdaki sorunlarla karşılaşabilirsiniz:
  • Yeni bir siteye göz window.open yöntemini gerçekleştiren bağlantısını tıklattığınızda, "Bilinmeyen hata" hata iletisi alırsınız.
  • Bir bağlantıyı sağ tıklatın ve sonra Yeni Pencerede Aç ' ı tıklatın, bu tüm ulaşmak değil.

Internet Explorer 5 belirtileri

Yeni bir siteye göz window.open yöntemini gerçekleştiren bir bağlantıyı tıklattığınızda ınternet Explorer 5'te beklendiği gibi veya bir bağlantıyı sağ tıklatın ve sonra Yeni Pencerede Aç ' ı tıklatın, Document.NewWindow çalışır.

Ancak, ınternet Explorer 5'te NewWindow2 kullandığınızda, aşağıdaki sorunlarla karşılaşabilirsiniz:
  • Yeni bir siteye göz window.open yöntemini gerçekleştiren bir bağlantıyı tıklatırsanız, hiç gidin değil.
  • Bir bağlantıyı sağ tıklatın ve sonra Yeni Pencerede Aç ' ı tıklatın, "Bilinmeyen hata" hata iletisi alırsınız.

Internet Explorer 4.x belirtileri

Document.NewWindow ınternet Explorer 4'te beklendiği gibi çalışır., yeni bir siteye göz window.open yöntemini gerçekleştirir ve ne zaman bir bağlantıyı sağ tıklatın ve sonra da <a2>Yeni Pencerede Aç</a2>'ı tıklatın, bir bağlantıyı tıklattığınızda x.

ınternet Explorer 4'te NewWindow2 kullandığınızda ancak. x ' de, aşağıdaki sorunlarla karşılaşabilirsiniz:
  • Yeni bir siteye göz window.open yöntemini gerçekleştiren bir bağlantıyı, gezinme.
  • Bir bağlantıyı sağ tıklatın ve sonra Yeni Pencerede Aç ' ı tıklatın, "Bilinmeyen hata" hata iletisi alırsınız.

Çözüm

Bu soruna geçici bir çözüm bulmak için <a0></a0>, uygulamanız aynı pencerede açmadan yerine yeni bir pencerede bağlantıyı açın. Ek bilgi için, Microsoft Bilgi Bankası'ndaki makaleyi görüntülemek üzere aşağıdaki makale numarasını tıklatın:
184876  (http://support.microsoft.com/kb/184876/EN-US/ ) Nasıl YAPıLıR: WebBrowser denetimi NewWindow2 olay kullan
ınternet Explorer 4'te Document.NewWindow olay çalıştığını unutmayın. x ' i ve ınternet Explorer 5. Bu nedenle, yalnızca bu tarayıcı sürümleri desteği varsa, Document.NewWindow olay kullanabilirsiniz.

Durum

Microsoft, bunun bu makalenin başında listelenen Microsoft ürünlerinde bir hata olduğunu onaylamıştır.

Daha fazla bilgi

Davranışı yeniden oluşturma adımları

Aşağıdaki kod, bir Microsoft Foundation Classes (MFC) uygulaması varsa ve Document.NewWindow aynı pencereye geçmek için ınternet Explorer 5. 5'te başarısız olur:
void CDWebBrowserEvents::OnNewWindow(BSTR URL, long Flags, BSTR TargetFrameName, 
				 VARIANT* PostData, BSTR Headers, BOOL FAR* Processed)
{
	if (m_Browser) {
	    COleVariant varEmpty;
	    *Processed = TRUE;
	    m_Browser->Navigate((LPCSTR)URL, &varEmpty, &varEmpty, &varEmpty, &varEmpty);
	}
}

				
NewWindow2 kullanırsanız, aşağıdaki kodu, ınternet Explorer'ın tüm sürümlerinde başarısız:
void CIEDlg::OnNewWindow2(LPDISPATCH FAR* ppDisp, BOOL FAR* Cancel) 
{

	IUnknown* pUnk = m_Browser.GetControlUnknown();
	if (pUnk)
	{
		IDispatch* pDisp = NULL;
		HRESULT hr = pUnk->QueryInterface(IID_IDispatch, (void**)&pDisp);

		if (SUCCEEDED(hr) && pDisp)
			*ppDisp = pDisp;
	}
}
				

Referanslar

Ek bilgi için, Microsoft Bilgi Bankası'ndaki makaleleri görüntülemek üzere aşağıdaki makale numaralarını tıklatın:
185538  (http://support.microsoft.com/kb/185538/EN-US/ ) Nasıl YAPıLıR: Aynı WebBrowser penceresinde oluşuyor gezinti neden
184876  (http://support.microsoft.com/kb/184876/EN-US/ ) Nasıl YAPıLıR: WebBrowser denetimi NewWindow2 olay kullan
194242  (http://support.microsoft.com/kb/194242/EN-US/ ) Düzeltme: window.open nedenler Document.NewWindow olayı içinde gecikme
Tarayıcı teknolojisi yeniden kullanma hakkında daha fazla bilgi için aşağıdaki Microsoft Web sitesine bakın:
http://msdn.microsoft.com/library/default.asp?url=/workshop/browser/overview/Overview.asp (http://msdn.microsoft.com/library/default.asp?url=/workshop/browser/overview/Overview.asp)
Microsoft ınternet Explorer için Web tabanlı çözümler geliştirme hakkında daha fazla bilgi için aşağıdaki Microsoft Web sitelerini ziyaret edin:
http://msdn.microsoft.com/ie/ (http://msdn.microsoft.com/ie/)

http://support.microsoft.com/iep (http://support.microsoft.com/iep)

Bu makaledeki bilginin uygulandığı durum:
  • Microsoft Internet Explorer 4.0 128-Bit Edition
  • Microsoft Internet Explorer 4.01 Service Pack 2
  • Microsoft Internet Explorer 4.01 Service Pack 1
  • Microsoft Internet Explorer 4.01 Service Pack 2
  • Microsoft Internet Explorer 5.0
  • Microsoft Internet Explorer 5.01
  • Microsoft Internet Explorer (Programming) 5.01 SP1
  • Microsoft Internet Explorer 5.5
Anahtar Kelimeler: 
kbmt kbbug kbnofix kbwebbrowser KB294870 KbMttr
Otomatik TercümeOtomatik Tercüme
ÖNEMLİ: Bu makale, bir kişi tarafından çevrilmek yerine, Microsoft makine-çevirisi yazılımı ile çevrilmiştir. Microsoft size hem kişiler tarafından çevrilmiş, hem de makine-çevrisi ile çevrilmiş makaleler sunar. Böylelikle, bilgi bankamızdaki tüm makalelere, kendi dilinizde ulaşmış olursunuz. Bununla birlikte, makine tarafından çevrilmiş makaleler mükemmel değildir. Bir yabancının sizin dilinizde konuşurken yapabileceği hatalar gibi, makale; kelime dağarcığı, söz dizim kuralları veya dil bilgisi açısından yanlışlar içerebilir. Microsoft, içeriğin yanlış çevrimi veya onun müşteri tarafından kullanımından doğan; kusur, hata veya zarardan sorumlu değildir. Microsoft ayrıca makine çevirisi yazılımını sıkça güncellemektedir.
Makalenin İngilizcesi aşağıdaki gibidir:294870  (http://support.microsoft.com/kb/294870/en-us/ )
Retired KB ArticleKullanım Dışı Bilgi Bankası İçeriği Yasal Uyarı
Bu makale, Microsoft'un artık destek sağlamadığı ürünler ile ilgili olarak yazılmıştır. Bu nedenle, bu makale "olduğu gibi" sağlanmıştır ve bundan sonra güncelleştirilmeyecektir.