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 Writer abgelöst. Source Reader und Sink Writer wurden für Windows 10 und Windows 11 optimiert. Microsoft empfiehlt dringend, dass neuer Code nach Möglichkeit quellleser und Senkenschreiber anstelle des Windows Media Format 11 SDK verwendet. Microsoft schlägt vor, dass vorhandener Code, der die Legacy-APIs verwendet, so umgeschrieben wird, dass nach Möglichkeit die neuen APIs verwendet 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.

Der Inhalt der verschiedenen Headerdateien, die in diesem SDK enthalten sind, werden in der folgenden Tabelle beschrieben.

Headerdatei 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. Schließen Sie diesen Header ein, wenn Sie eine Anwendung schreiben, die DRM verwendet.
dshowasf.h Definiert die QASF-Filter von Microsoft DirectShow. Schließen 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 ist, die mit dem Windows Media Format SDK installiert sind.
nserror.h Definiert Fehlercodes für Windows Media-Technologien. 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 von Pufferobjekten verwendeten Schnittstellen. Schließen Sie diesen Header ein, wenn Sie eigene Puffer für das Lesen von Dateien erstellen.
wmsdk.h Der Standard-Header für Anwendungen, die das Windows Media Format SDK verwenden. Dieser Header enthält keine Definitionen, aber 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. Schließen Sie diesen Header in Anwendungen ein, die Systemprofile nach Bezeichner laden.

Um das Windows Media Format SDK verwenden zu können, muss Der Compiler ordnungsgemäß konfiguriert sein. Die Konfiguration unterscheidet sich beim Erstellen im Debugmodus von der für den Releasemodus. Konfigurieren Sie Ihre Einstellung gemäß der folgenden Tabelle. Alle diese Einstellungen werden im Dialogfeld Projekteinstellungen konfiguriert. Um zum Dialogfeld zu gelangen, wählen Sie im Menü Projekt die Option Einstellungen aus.

Einstellung Debugwert Releasewert
(Registerkarte C/C++, Kategorie = Codegenerierung) Verwenden der Laufzeitbibliothek Debuggen einer Multithread-DLL Multithread-DLL
(Registerkarte "Link", "Kategorie = Allgemein") Alle Standardbibliotheken ignorieren (Kontrollkästchen) Ausgewählt Ausgewählt
(Registerkarte "Link", "Kategorie = Allgemein") Objekt-/Bibliotheksmodule Fügen Sie Msvcrtd.lib und Wmvcore.lib.Do libc.lib oder keine Variationen ein.
Fügen Sie Msvcrt.lib und Wmvcore.lib.Do libc.lib oder keine Variationen ein.

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

Einstellung Debugwert Releasewert
(Konfigurationseigenschaften / C/C++ / Codegenerierung) Laufzeitbibliothek Multithread-Debug-DLL (/MDd) Multithread-DLL (/MD)
(Konfigurationseigenschaften / Linker / Eingabe) Zusätzliche Abhängigkeiten Fügen Sie Msvcrtd.lib und Wmvcore.lib.Do libc.lib oder keine Variationen ein.
Fügen Sie Msvcrt.lib und Wmvcore.lib.Do libc.lib oder keine Variationen ein.
(Konfigurationseigenschaften / Linker / Eingabe) Alle Standardbibliotheken ignorieren Ja Ja

Wenn Sie das Laden von Wmvcore.dll oder 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 dann auf die Registerkarte Verzeichnisse. Wenn Sie Visual C++ .NET verwenden, klicken Sie im Menü Extras auf Optionen, und wählen Sie dann in der Optionsliste Projekte/VC++-Verzeichnisse aus. Fügen Sie Verzeichnisse hinzu, wie in der folgenden Tabelle gezeigt. Wenn Sie das Installationsverzeichnis für das Windows Media Format SDK geändert haben, ist Ihr Pfad anders.

Verzeichnistyp Standardpfad
Includedateien C:\WMSDK\WMFSDK11\include
Bibliotheksdateien C:\WMSDK\WMFSDK11\lib

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

Verzeichnistyp Standardpfad
Includedateien C:\Programme\Microsoft SDsK\Windows\v6.0\Include
Bibliotheksdateien C:\Programme\Microsoft SDsK\Windows\v6.0\Lib

Vor dem Aufrufen einer der Erstellungsfunktionen sollte COM mit einem Aufruf von Coinitialize oder CoinitializeEx initialisiert werden. Es kann entweder das freie Threadingmodell oder das Apartmentthreadingmodell verwendet werden, aber das Apartmentthreadingmodell erzwingt Threadingeinschränkungen für die Anwendung. 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