Freigeben über


Bibliotheksdateien und Compilereinstellungen

[Das dieser Seite zugeordnete Feature Windows Media Format 11 SDK-ist ein Legacyfeature. Es wurde von Source Reader und Sink Writerersetzt. Source Reader und Sink Writer wurden für Windows 10 und Windows 11 optimiert. Microsoft empfiehlt dringend, dass neuer Code Source Reader und Sink Writer- anstelle Windows Media Format 11 SDK-verwendet werden soll. Microsoft schlägt vor, dass vorhandener Code, der die Legacy-APIs verwendet, um die neuen APIs zu verwenden, falls möglich umgeschrieben werden.]

Um eine Anwendung mit dem Windows Media Format SDK zu entwickeln, müssen Sie Microsoft Visual C++ Version 6.0 oder höher verwenden. Die einzigen Programmiersprachen, die für die Entwicklung geeignet sind, sind C++ und C.

Die Inhalte der verschiedenen Headerdateien, die in diesem SDK enthalten sind, werden in der folgenden Tabelle beschrieben.

Header-Datei Beschreibung
asferr.h Definiert Fehlercodes im Zusammenhang mit ASF-Dateivorgängen. Dieser Header ist in wmsdk.h enthalten.
drmexternals.h Definiert Strukturen, Enumerationen und Konstanten, die für die Verwaltung digitaler Rechte (Digital Rights Management, DRM) verwendet werden. Fügen Sie diesen Header ein, wenn Sie eine Anwendung schreiben, die DRM verwendet.
dshowasf.h Definiert die Microsoft DirectShow QASF-Filter. Fügen Sie diesen Header ein, wenn Sie eine DirectShow-Anwendung schreiben, die ASF-Dateien erstellt oder liest. Weitere Informationen finden Sie unter DirectShow- und Windows Media-.
msnetobj.h Definiert die IRMGetLicense Schnittstelle, die in einer der Laufzeitbibliotheken implementiert wird, die mit dem Windows Media Format SDK installiert sind.
nserror.h Definiert Fehlercodes für Windows Media Technologies. Nur eine Teilmenge dieser Fehlercodes ist für das Windows Media Format SDK relevant. Dieser Header ist in wmsdk.h enthalten.
wmdxva.h Enthält weitere Header und Definitionen, die zum Aktivieren der Microsoft DirectX-Videobeschleunigung für die Wiedergabe von Windows Media-basierten Inhalten erforderlich sind. Weitere Informationen finden Sie unter Aktivieren der DirectX-Videobeschleunigung.
wmnetsourcecreator.h Enthält Informationen, die zum Erstellen von Netzwerkquell-Plug-Ins erforderlich sind.
wmsbuffer.h Definiert die schnittstellen, die von Pufferobjekten verwendet werden. Fügen Sie diesen Header ein, wenn Sie eigene Puffer zum Lesen von Dateien erstellen.
wmsdk.h Der Hauptheader für Anwendungen mit dem Windows Media Format SDK. Dieser Header enthält keine Definitionen, enthält jedoch asferr.h, nserror.h, windows.h und wmsdkidl.h. Fügen Sie diesen Header für alle Anwendungen ein, die dieses SDK verwenden.
wmsdkidl.h Definiert die Schnittstellen, Funktionen, Strukturen, Enumerationen und Konstanten für die meisten Objekte des Windows Media Format SDK. Dieser Header ist in wmsdk.h enthalten.
wmsinternaladminnetsource.h Definiert die Schnittstellen von Netzwerkquell-Plug-Ins.
wmsysprf.h Definiert die Konstanten für die Systemprofile. Fügen Sie diesen Header in Anwendungen ein, die Systemprofile nach Bezeichner laden.

Um das Windows Media Format SDK zu verwenden, muss der Compiler ordnungsgemäß konfiguriert sein. Die Konfiguration unterscheidet sich vom Erstellen im Debugmodus als für den Releasemodus. Konfigurieren Sie Ihre Einstellung entsprechend der folgenden Tabelle. Alle diese Einstellungen sind im Dialogfeld "Projekteinstellungen" konfiguriert. Um zum Dialogfeld zu gelangen, wählen Sie im Menü ProjectEinstellungen aus.

Einstellung Debugwert Releasewert
(Registerkarte C/C++, Kategorie = Codegenerierung) Verwenden der Laufzeitbibliothek Debuggen von Multithread-DLL Multithread-DLL
(Registerkarte "Link", Kategorie = Allgemein) Alle Standardbibliotheken ignorieren (Kontrollkästchen) Ausgewählt Ausgewählt
(Registerkarte "Link", Kategorie = Allgemein) Objekt-/Bibliotheksmodule Schließen Sie Msvcrtd.lib ein, und Wmvcore.lib.Do keine Libc.lib oder variationen enthalten.
Schließen Sie Msvcrt.lib und Wmvcore.lib.Do keine Libc.lib oder variationen ein.

Wenn Sie Microsoft Visual Studio .NET verwenden, wurden die Einstellungen an verschiedenen Speicherorten geändert, wie in der folgenden Tabelle dargestellt. Alle diese Einstellungen werden im Dialogfeld Eigenschaftenseiten konfiguriert. Um zum Dialogfeld zu gelangen, klicken Sie im Projektmappen-Explorer Bereich mit der rechten Maustaste auf Ihr Projekt, und wählen Sie im Kontextmenü Eigenschaften aus.

Einstellung Debugwert Releasewert
(Konfigurationseigenschaften / C/C++ / Codegenerierung) Laufzeitbibliothek Multithreaded Debug DLL (/MDd) Multithread-DLL (/MD)
(Konfigurationseigenschaften / Linker / Eingabe) Zusätzliche Abhängigkeiten Schließen Sie Msvcrtd.lib ein, und Wmvcore.lib.Do keine Libc.lib oder variationen enthalten.
Schließen Sie Msvcrt.lib und Wmvcore.lib.Do keine Libc.lib oder variationen ein.
(Konfigurationseigenschaften / Linker / Eingabe) Alle Standardbibliotheken ignorieren Ja Ja

Wenn Sie das Laden von Wmvcore.dlloder einer anderen DLL verzögern möchten, verwenden Sie die Linkoption /DELAYLOAD in Microsoft Visual C++ 6.0 oder verzögert geladene DLLs in Microsoft Visual C++ .NET.

Darüber hinaus müssen Sie die Verzeichnisse für die Bibliotheken und Header des Windows Media Format SDK einschließen. Um die Verzeichniseinstellungen für Visual C++ 6.0 zu finden, klicken Sie im Menü Extras auf Optionen, und klicken Sie dann auf die Registerkarte Verzeichnisse. Wenn Sie Visual C++ .NET verwenden, klicken Sie im Menü Extras auf Optionen, und wählen Sie dann "Projekte/VC++-Verzeichnisse" in der Optionsliste aus. Fügen Sie Verzeichnisse wie in der folgenden Tabelle dargestellt hinzu. Wenn Sie das Installationsverzeichnis für das Windows Media Format SDK geändert haben, unterscheidet sich Ihr Pfad.

Verzeichnistyp Standardpfad
Einschließen von Dateien C:\WMSDK\WMFSDK11\include
Bibliotheksdateien C:\WMSDK\WMFSDK11\lib

Wenn Sie das Platform SDK verwenden, werden die Standardpfade wie folgt angezeigt:

Verzeichnistyp Standardpfad
Einschließen von Dateien C:\Programme\Microsoft SDsK\Windows\v6.0\Include
Bibliotheksdateien C:\Programme\Microsoft SDsK\Windows\v6.0\Lib

Bevor Sie eine der Erstellungsfunktionen aufrufen, sollte COM mit einem Aufruf von Coinitialize oder CoinitializeExinitialisiert werden. Entweder das freie Threadingmodell oder das Apartmentthreadingmodell kann verwendet werden, aber das Apartmentthreadingmodell legt Threadingeinschränkungen für die Anwendung fest. Weitere Informationen zum Microsoft Component Object Model (COM) finden Sie auf der COM-Seite auf der Microsoft-Website.

Hinweis Anwendungen, die Dateien wiedergeben oder erstellen, die durch Digital Rights Management (DRM) geschützt sind, erfordern eine individualisierte statische Bibliothek, die separat von Microsoft abgerufen werden muss. Weitere Informationen finden Sie im Windows Media-Lizenzierungsformular auf der Microsoft-Website. Wenn Sie die DRM-Bibliothek verwenden, sollten Sie keine Verknüpfung mit Wmvcore.lib herstellen.

Erste Schritte