Düzeltme: Durum sonsuz özyinelemeye, MFC ActiveX denetimi kapsayıcılar Visual C++ girdiğinizde BIR yığın taşması olur

Makale çevirileri Makale çevirileri
Makale numarası: 192942 - Bu makalenin geçerli olduğu ürünleri görün.
Bu makale arşivlenmiştir. "Olduğu gibi" sunulmaktadır ve bundan sonra güncelleştirilmeyecektir.
Hepsini aç | Hepsini kapa

Belirtiler

Belirli koşullar altında MFC ActiveX denetimi kapsayıcılar bir sonunda Yığın Taşması için müşteri adayları, sonsuz özyinelemeye durumuna girer. Bir <a0>Denetim</a0> sitesinin konumu değiştiğinde bu belirtileri olan, program ekranınızda kapatmak ve sonuçta yığın taşmasına neden (0xC00000FD) işletim sistemi özel durum. Yığın izlemesi aşağıdaki gibi görünür:
   COleControlSite::MoveWindow
   COleControl::XOleInPlaceObject::SetObjectRects
   COleControl::OnSetObjectRects
   COleControlSite::MoveWindow
   ...
				

Neden

<a0>Denetim</a0> sitesinin konumu değiştiğinde Konteyner Kodu (varsa) reflector pencere (varsa) ve izleyici dikdörtgenler konumunu değiştirir. Denetim kapsayıcısı kodunu sonunda COleControl::XOleInPlaceObject::SetObjectRects çağırır. (MFC kaynak CTLINPLC.CPP bakın.) SetObjectRects() reflector penceresi varsa döndüren GetOuterWindow() bir çağrı yapar. Reflector penceresi değişken NULL ise sonra aynı pencere nesnesini, döndürülen pencere nesnesi kullanan MoveWindow sonra çağrılır verir. Bu, kendisini, özyinelemeli bir döngüde kaynaklanan çağrılacak MoveWindow neden olur.

Çözüm

MFC42.DLL Visual C++ 5.0 sürümünü kopyalamak için bir geçici çözüm ise (dosya sürümü: 4.21.7303) bu sorunla karşılaşan programın giriş dizinine. Bu program yerine, Windows sistem dizininde bulunan MFC42.DLL MFC, eski bir sürümünü kullanmak neden olur.

Durum

Microsoft, bu hata Microsoft olmasını onaylamıştır ürünleri, bu makalede listelenen. Bu hata, Visual Studio 6.0 Service Pack 1'de giderilmiştir.

Bu hizmet paketini edinmek için <a0></a0>, aşağıdaki Microsoft Web sitesini ziyaret edin:
http://msdn2.microsoft.com/en-us/vstudio/Aa718362.aspx
Visual Studio 6.0 Service Pack 1 hakkında daha fazla bilgi için Microsoft Knowledge Base'deki makaleleri görüntülemek üzere aşağıdaki makale numaralarını tıklatın:
193009Visual Studio 6.0 Service Pack 1 Benioku
194022Visual Studio 6.0 hizmet paketleri, ne, nerede, neden (Bu bağlantı, bir kısmı veya tamamı İngilizce olan içeriğe işaret edebilir.)
194295Visual Studio hizmet paketinin yüklü olmadığını belirleme

Daha fazla bilgi

Bu hata, Corel Office paketi 8 bir parçası olarak gelen bir WordPerfect 8 bulundu. Bu hata, yalnızca Visual C++ 6.0 sürümüyle MFC42.DLL oluşur.

Özellikler

Makale numarası: 192942 - Last Review: 22 Şubat 2014 Cumartesi - Gözden geçirme: 5.2
Bu makaledeki bilginin uygulandığı durum:
  • Microsoft Foundation Class Library 4.2, Ne zaman ne ile kullanilir:
    • Microsoft Visual C++ 6.0 Enterprise Edition
    • Microsoft Visual C++ 6.0 Professional Edition
    • Microsoft Visual C++, 32-bit Learning Edition 6.0
Anahtar Kelimeler: 
kbnosurvey kbarchive kbmt kbqfe kbbug kbfix kbnoupdate kbvc600sp1fix kbvs600sp1fix KB192942 KbMttr
Machine-translated Article
Ö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:192942

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