Freigeben über


CFactoryTemplate::m_lpfnNew-Element

[Das dieser Seite zugeordnete Feature DirectShow ist ein Legacyfeature. Es wurde von MediaPlayer, IMFMediaEngine und Audio/Video Capture in Media Foundation abgelöst. Diese Features wurden für Windows 10 und Windows 11 optimiert. Microsoft empfiehlt dringend, dass neuer Code mediaPlayer, IMFMediaEngine und Audio/Video Capture in Media Foundation anstelle von DirectShow verwendet, wenn möglich. Microsoft schlägt vor, dass vorhandener Code, der die Legacy-APIs verwendet, so umgeschrieben wird, dass nach Möglichkeit die neuen APIs verwendet werden.]

Zeiger auf eine Funktion, die eine instance des Objekts erstellt.

Syntax

LPFNNewCOMObject m_lpfnNew;

Bemerkungen

Deklarieren Sie in Der DLL eine statische Funktion, die einen Zeiger auf eine neue instance des Objekts zurückgibt. Legen Sie in der Factoryvorlage die m_lpfnNew-Membervariable auf die Adresse dieser statischen Funktion fest.

Der Funktionszeigertyp ist LPFNNewCOMObject.

Das folgende Beispiel zeigt eine typische Funktion für m_lpfnNew:

CUnknown * WINAPI CMyComponent::CreateInstance(LPUNKNOWN pUnk, HRESULT *pHr) 
{
    CMyComponent *pNewObject = 
        new CMyComponent(NAME("My Component"), pUnk, pHr );

    if (pNewObject == NULL)  
    {
        *phr = E_OUTOFMEMORY;
    }
    return pNewObject;
}

Anforderungen

Anforderung Wert
Header
Combase.h (Einschließen von Streams.h)
Bibliothek
Strmbase.lib (Einzelhandelsbuilds);
Strmbasd.lib (Debugbuilds)

Siehe auch

CFactoryTemplate-Klasse