Bibliotheksdateien und Compiler-Einstellungen
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.
| 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 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 andere Header und Definitionen, die erforderlich sind, um die Microsoft DirectX-Videobeschleunigung für die Wiedergabe Windows medienbasierten Inhalts zu aktivieren. 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. Schließen Sie diesen Header ein, wenn Sie eigene Puffer zum Lesen von Dateien erstellen. |
| wmsdk.h | Der Hauptheader für Anwendungen, die das Windows Media Format SDK verwenden. Dieser Header enthält keine Definitionen, enthält jedoch asferr.h, nserror.h, windows.h und wmsdkidl.h. Schließen 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 Ihr Compiler ordnungsgemäß konfiguriert sein. Die Konfiguration unterscheidet sich für die Erstellung im Debugmodus von der Konfiguration für den Releasemodus. Konfigurieren Sie Ihre Einstellung gemäß der folgenden Tabelle. Alle diese Einstellungen werden im Dialogfeld Project Einstellungen konfiguriert. Um zum Dialogfeld zu gelangen, wählen Sie im Menü Project 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 | Schließen Sie Msvcrtd.lib ein, und Wmvcore.lib.Do nicht Libc.lib oder variation. |
Schließen Sie Msvcrt.lib ein, und Wmvcore.lib.Do nicht Libc.lib oder variation. |
Wenn Sie Microsoft Visual Studio .NET verwenden, wurden die Einstellungen an verschiedene Speicherorte geändert, wie in der folgenden Tabelle dargestellt. 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 | Schließen Sie Msvcrtd.lib ein, und Wmvcore.lib.Do nicht Libc.lib oder variation. |
Schließen Sie Msvcrt.lib ein, und Wmvcore.lib.Do nicht Libc.lib oder variation. |
| (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 projekte/VC++ Verzeichnisse in der Optionsliste aus. Fügen Sie wie in der folgenden Tabelle gezeigt Verzeichnisse hinzu. Wenn Sie das Installationsverzeichnis für das Windows Media Format SDK geändert haben, unterscheidet sich Ihr Pfad.
| Verzeichnistyp | Standardpfad |
|---|---|
| Includedateien | C: \ WMSDK \ WMFSDK11 \ include |
| Bibliotheksdateien | C: \ WMSDK \ WMFSDK11 \ lib |
Wenn Sie das Plattform-SDK verwenden, werden die Standardpfade wie folgt angezeigt:
| Verzeichnistyp | Standardpfad |
|---|---|
| Includedateien | C: \ \ Microsoft-SDsK \ Windows \ v6.0-Includedateien \ |
| 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. Entweder das Freethreadingmodell oder das Apartmentthreadingmodell kann 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 wiederspielen oder erstellen, die durch Digital Rights Management (DRM) geschützt sind, erfordern eine individualisierte statische Bibliothek, die separat von Microsoft erworben werden muss. Weitere Informationen finden Sie im Windows Media Licensing Form auf der Microsoft-Website. Wenn Sie die DRM-Bibliothek verwenden, sollten Sie keinen Link zu Wmvcore.lib erstellen.