Filtro DirectShow non si connette al filtro downstream 8 Windows e Windows 7 SP1 con 2670838 KB

Traduzione articoli Traduzione articoli
Identificativo articolo: 2841589 - Visualizza i prodotti a cui si riferisce l?articolo.
Espandi tutto | Chiudi tutto

Sintomi

Si sta utilizzando un filtro DirectShow che non si connette a un filtro a valle 8 Windows e Windows 7 SP1 dopo l'installazione di 2670838 KB.  Prima di installare KB 2670838 il problema non si è verificata in Windows 7 SP1.
  • Quando si chiama ilCBasePin.ReceiveConnection funzione il valore restituito è VFW_E_INVALIDMEDIATYPE (0x80040200)

Cause

Nuovi controlli per i tipi di file multimediali video sono stati aggiunti alla classe di base di DirectShow in Windows 8.  Questi controlli possono rifiutare tipi di supporto errata o sconosciuta. Questi controlli vengono aggiunti a proteggere i sistemi da un overflow del buffer e vulnerabilità i sovraccarichi del buffer.

KB 2670838 per Windows 7 SP1 aggiorna il sottosistema di DirectShow con le stesse modifiche.

Risoluzione

Di seguito sono consigli che consentono di verificare che il codice passa i nuovi controlli di sicurezza:

  • Verificare AM_MEDIA_TYPE struttura per valori non validi. Questa struttura descrive il formato di un esempio multimediale.
  • Quando si chiama CMediaType.AllocFormatBuffer per allocare memoria per il blocco del formato, assicurarsi che si stanno passando le dimensioni corrette necessarie per il blocco del formato.

    Nota: questo metodo aggiorna il cbFormat e pbFormat i membri del AM_MEDIA_TYPE struttura.
  • Verificare la struttura BITMAPINFOHEADER per valori non validi
    • Assicurarsi che biSize è uguale a sizeof(BITMAPINFOHEADER)
    • Verificare biSizeImage per un valore errato (cioè > 0x40000000)
    • Verificare biClrUsed per un valore errato (cioè > 256)

Informazioni

Procedura per riprodurre il problema utilizzando GraphEdit:

GraphEdit è disponibile in (il Software Development Kit (SDK) di Microsoft Windowshttp://go.microsoft.com/fwlink/p/?LinkId=62332).

Passaggio 1. Passare alla cartella Bin del SDK di Windows ed eseguire graphedt.exe.

Passaggio 2. Dal menu grafico , fare clic su Inserisci filtri. Nella finestra di dialogo viene visualizzato un elenco di filtri nel sistema, organizzate per categoria di filtro.

Passaggio 3. Trovare il filtro sotto la categoria appropriata (in genere disponibili nella categoria di Filtri DirectShow ) e fare clic sul pulsante Inserisci filtro . Se il filtro non è un filtro di origine, quindi assicurarsi che è stato aggiunto il filtro di origine necessari per esso.

Passaggio 4. Inserire il filtro appropriato a valle.

Passaggio 5. Dopo aver aggiunto i filtri, è possibile connettere i due filtri trascinando il mouse dal pin di output di un filtro al pin di input di un altro filtro. Se i pin accettano la connessione, GraphEdit Disegna una freccia che li collega. Provare per il filtro con il filtro a valle. Si vedrà-
  • Pin di input e pin di output si connetterà senza errori in Windows 7 SP1.
  • GraphEdit visualizzerà un messaggio di errore Windows 8 e Windows 7 SP1 con KB 2670838 installato.
Termini utilizzati in questo articolo:

Overflow del buffer:

Un overflow del buffer si verifica quando si tenta di inserire più dati in un buffer allocato. Un overflow del buffer consente di eseguire codice dannoso in un sistema.

Sovraccarichi del buffer:

Essenzialmente è dovuta a sovraccarico del buffer di A considerando input esterno, non controllato come dati affidabili. L'operazione di copia dei dati, utilizzando operazioni quali CopyMemory, strcat, strcpy o wcscpy, possibile creare risultati imprevisti, che consente di danneggiamento del sistema.

Collegamenti correlati:

Metodo CBasePin.ReceiveConnection

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

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

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

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

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

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

Proprietà

Identificativo articolo: 2841589 - Ultima modifica: mercoledì 24 aprile 2013 - Revisione: 1.0
Le informazioni in questo articolo si applicano a:
  • 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
Chiavi: 
kbmt KB2841589 KbMtit
Traduzione automatica articoli
IMPORTANTE: il presente articolo è stato tradotto tramite un software di traduzione automatica di Microsoft ed eventualmente revisionato dalla community Microsoft tramite la tecnologia CTF (Community Translation Framework) o da un traduttore professionista. Microsoft offre articoli tradotti manualmente e altri tradotti automaticamente e rivisti dalla community con l?obiettivo di consentire all'utente di accedere a tutti gli articoli della Knowledge Base nella propria lingua. Tuttavia, un articolo tradotto automaticamente, anche se rivisto dalla community, non sempre è perfetto. Potrebbe contenere errori di vocabolario, di sintassi o di grammatica. Microsoft declina ogni responsabilità per imprecisioni, errori o danni causati da una traduzione sbagliata o dal relativo utilizzo da parte dei clienti. Microsoft aggiorna frequentemente il software e gli strumenti di traduzione automatica per continuare a migliorare la qualità della traduzione.
Clicca qui per visualizzare la versione originale in inglese dell?articolo: 2841589
LE INFORMAZIONI CONTENUTE NELLA MICROSOFT KNOWLEDGE BASE SONO FORNITE SENZA GARANZIA DI ALCUN TIPO, IMPLICITA OD ESPLICITA, COMPRESA QUELLA RIGUARDO ALLA COMMERCIALIZZAZIONE E/O COMPATIBILITA' IN IMPIEGHI PARTICOLARI. L'UTENTE SI ASSUME L'INTERA RESPONSABILITA' PER L'UTILIZZO DI QUESTE INFORMAZIONI. IN NESSUN CASO MICROSOFT CORPORATION E I SUOI FORNITORI SI RENDONO RESPONSABILI PER DANNI DIRETTI, INDIRETTI O ACCIDENTALI CHE POSSANO PROVOCARE PERDITA DI DENARO O DI DATI, ANCHE SE MICROSOFT O I SUOI FORNITORI FOSSERO STATI AVVISATI. IL DOCUMENTO PUO' ESSERE COPIATO E DISTRIBUITO ALLE SEGUENTI CONDIZIONI: 1) IL TESTO DEVE ESSERE COPIATO INTEGRALMENTE E TUTTE LE PAGINE DEVONO ESSERE INCLUSE. 2) I PROGRAMMI SE PRESENTI, DEVONO ESSERE COPIATI SENZA MODIFICHE, 3) IL DOCUMENTO DEVE ESSERE DISTRIBUITO INTERAMENTE IN OGNI SUA PARTE. 4) IL DOCUMENTO NON PUO' ESSERE DISTRIBUITO A SCOPO DI LUCRO.

Invia suggerimenti

 

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