Windows 8 ve Windows 7 SP1 KB 2670838'akış Filtresi DirectShow filtre bağlanmaz

Makale çevirileri Makale çevirileri
Makale numarası: 2841589 - Bu makalenin geçerli olduğu ürünleri görün.
Hepsini aç | Hepsini kapa

Belirtiler

Windows 8 ve Windows 7 SP1 akış filtre KB 2670838 yükledikten sonra bağlanmayan bir DirectShow filtre kullanıyorsunuz.  KB 2670838'i yüklemeden önce bu sorunu Windows 7 SP1'de gerçekleşmedi.
  • ArarkenCBasePin.ReceiveConnection döndürülen değer işlevi VFW_E_INVALIDMEDIATYPE (0x80040200)

Neden

Windows 8 DirectShow temel sınıf eklenmiş yeni video medya türlerini denetler.  Bu denetimler, yanlış veya Bilinmeyen ortam türleri reddedebilir. Bu denetimler Arabellek taşmaları sistemlerini korumak için eklenir ve arabelleğin taşmasına neden exploitations.

KB 2670838 Windows 7 SP1 DirectShow alt aynı değişikliklerle güncelleştirir.

Çözüm

Kodunuzu yeni güvenlik denetimlerinden geçiyor olmak yardımcı olabilecek öneriler şunlardır:

  • Doğrulayın AM_MEDIA_TYPE yapısı geçersiz değer. Medya örneğinin biçimi bu yapısını açıklar.
  • Ararken CMediaType.AllocFormatBuffer Biçimlendirme bloğu için bellek ayrılamıyor, biçimlendirme bloğu için gereken doğru boyutu geçirdiğinizden emin olun.

    Lütfen dikkat: Bu yöntem güncelleştirir cbFormat ve pbFormat üyeleri AM_MEDIA_TYPE yapısı.
  • BITMAPINFOHEADER yapısı için geçersiz değerler doğrulayın
    • Emin olun biSize eşittir sizeof(BITMAPINFOHEADER)
    • Doğrulayın biSizeImage hatalı değer (yani > 0x40000000)
    • Doğrulayın biClrUsed hatalı değer (yani > 256)

Daha fazla bilgi

GraphEdit kullanarak sorunu yeniden oluşturma adımları:

GraphEdit Microsoft Windows Software Development Kit (SDK) () içinde kullanılabilirhttp://go.microsoft.com/fwlink/p/?linkid=62332).

Adım 1. Windows SDK bin klasörüne gidin ve graphedt.exeçalıştırın.

Adım 2.Grafik menüsünden Ekle süzgeçleri' ni tıklatın. Filtreler, sisteminizdeki kategorilere göre filtre listesini içeren bir iletişim kutusu görüntülenir.

Adım 3.Filtre Ekle düğmesini tıklatın ve uygun kategori (genellikle DirectShow filtre kategorisi altında bulunur) altında filtre bulun. Filtreniz Kaynak Filtresi sonra emin olun yoksa bunun için gerekli kaynak filtresi eklediniz.

Adım 4. Gerekli akış filtresi ekleyin.

Adım 5. Filtre ekledikten sonra bir filtrenin çıkış iğnesinden başka bir filtrenin girdi sabitlemesi için fareyi sürükleyerek iki filtre bağlanabilirsiniz. İğneler bağlantı kabul ederseniz, GraphEdit bunları bağlanan bir ok çizer. Akış Filtresi, filtre için deneyin. Göreceğiniz-
  • Windows 7 SP1 üzerinde herhangi bir hata olmadan girdi sabitlemesi ve çıktı sabitlemesi bağlanır.
  • GraphEdit Windows 8 ve Windows 7 SP1 yüklü KB 2670838 ', hata iletisi gösterir.
Bu makalede kullanılan terimler:

Arabellek Taşması:

Daha fazla veri ayrılmış olan daha bir arabelleğe sığması çalıştığınızda, arabellek taşması oluşur. Arabellek Taşması, bir sistemde kötü amaçlı kod yürütmek için kullanılabilir.

Arabellek taşmaları:

Güvenilir veri olarak denetlenmeyen, dış giriş düşünerek bir arabellek taşması aslında neden olur. CopyMemory, strcat, strcpy veya wcscpy gibi işlemleri kullanarak bu veri kopyalama işlemi, olanak sağlayan sistemi Bozulması için beklenmedik sonuçlar oluşturabilir.

İlgili bağlantılar:

CBasePin.ReceiveConnection yöntemi

http://msdn.microsoft.com/en-us/library/Windows/Desktop/dd368737 (v=vs.85) .aspx

CMediaType sınıfı
http://msdn.microsoft.com/en-us/library/Windows/Desktop/dd374727 (v=vs.85) .aspx

CMediaType.AllocFormatBuffer yöntemi
http://msdn.microsoft.com/en-us/library/Windows/Desktop/dd374728 (v=vs.85) .aspx

AM_MEDIA_TYPE yapısı
http://msdn.microsoft.com/en-us/library/Windows/Desktop/dd373477 (v=vs.85) .aspx

BITMAPINFOHEADER yapısı
http://msdn.microsoft.com/en-us/library/Windows/Desktop/dd183376 (v=vs.85) .aspx

GraphEdit kullanma
http://msdn.microsoft.com/en-us/library/Windows/Desktop/dd407274 (v=vs.85) .aspx

Özellikler

Makale numarası: 2841589 - Last Review: 24 Nisan 2013 Çarşamba - Gözden geçirme: 1.0
Bu makaledeki bilginin uygulandığı durum:
  • Windows 8
  • Windows 8 Enterprise
  • Windows 8 Pro
  • Windows 7 Enterprise
  • Windows 7 Ultimate
  • Windows 7 Professional
  • Windows 7 Home Premium
  • Windows 7 Home Basic
  • Windows 7 Service Pack 1
Anahtar Kelimeler: 
kbmt KB2841589 KbMttr
Machine-translated Article
ÖNEMLİ: Bu makale, Microsoft Makine Çevirisi Düzenleme yazılımı tarafından tercüme edilmiş olup, yüksek olasılıkla profesyonel bir çevirmen yerine CTF teknolojisi kullanılarak, Microsoft Topluluğu tarafından düzenlenmiştir. Microsoft, Bilgi Bankamız içindeki tüm makaleleri kendi dilinizde okuyabilmeniz için size hem profesyonel çevirmenler tarafından tercüme edilen hem de makine tarafından tercüme edildikten sonra Topluluk tarafından kontrol edilen makaleler sunar. Bununla birlikte, makine tarafından tercüme edilen, hatta Topluluk tarafından kontrol edilen bir makale bile her zaman mükemmel dil kalitesinde olmayabilir. Makalede dilinizi konuşan yabancı birisinin yapabileceği türden sözcük, söz dizimi veya dilbilgisi hataları bulunabilir. Microsoft, içeriğin hatalı tercümesinin veya müşterilerimiz tarafından kullanımının doğurabileceği olası yanlış anlamalar, hatalar veya zararlardan sorumlu değildir. Öte yandan Microsoft, Makine Çevirisi Düzenleme işlemini geliştirmek amacıyla Makine Çevirisi Düzenleme yazılımını ve araçlarını sık sık güncelleştirmektedir.
Makalenin İngilizcesi aşağıdaki gibidir: 2841589

Geri Bildirim Ver

 

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