Hinzufügen des ContentDistributor-Attributs

[Das dieser Seite zugeordnete Feature Windows Medienwiedergabe SDK ist ein Legacyfeature. Es wurde von MediaPlayer ersetzt. MediaPlayer wurde für Windows 10 und Windows 11 optimiert. Microsoft empfiehlt dringend, nach Möglichkeit für neuen Code MediaPlayer anstelle von Windows Medienwiedergabe SDK zu verwenden. Microsoft schlägt vor, vorhandenen Code, der die Legacy-APIs verwendet, um nach Möglichkeit die neuen APIs zu verwenden.]

Wenn der Benutzer versucht, Onlinespeicherinhalte wiederzugeben oder den Inhalt auf eine CD oder ein Gerät zu kopieren, ruft Windows Medienwiedergabe bestimmte Methoden in Ihrem COM-Objekt auf. Dazu benötigt der Player eine Möglichkeit, Ihre Inhalte von denen anderer Online-Shop-Anbieter zu unterscheiden. Indem Sie Ihren Windows Media-basierten Inhalten den Namen Ihres Online-Store-Schlüssels als Wert für das ContentDistributor-Attribut (ein Alias für das Windows Media Format SDK-Attribut namens WM/ContentDistributor) hinzufügen, stellen Sie sicher, dass der Player die inhalte identifizieren kann, die Ihrem Dienst zugeordnet sind.

Das Hinzufügen eines Werts für ContentDistributor stellt außerdem sicher, dass Windows Medienwiedergabe einen Knoten in der Bibliothek für von Ihnen bereitgestellte Inhalte erstellt. Siehe Bibliotheksintegration.

Sie können diesen Wert auf zwei Arten angeben:

  • Verwenden Sie das Windows Medienwiedergabe-Objektmodell. In diesem Fall fügt Windows Medienwiedergabe der Bibliotheksdatenbank den von Ihnen angegebenen Wert hinzu. Schließlich schreibt der Player den Attributwert auch in die digitale Mediendatei.
  • Verwenden Sie das Windows Media Format SDK, um das WM/ContentDistributor-Attribut programmgesteuert hinzuzufügen. Wenn Sie dies tun, liest Windows Medienwiedergabe den Attributwert und fügt ihn der Datenbank hinzu, wenn die digitale Mediendatei der Bibliothek hinzugefügt wird.

Beim Erstellen Ihres COM-Objekts ihres Online-Shops müssen der Dateiattributewert, den Sie für ContentDistributor festlegen, und der Wert, der der Konstante kszContentDistributorID in YourProject.h zugewiesen ist, genau übereinstimmen. Denken Sie daran, dass Sie diesen konstanten Wert für Ihr COM-Objekt angegeben haben, als Sie das Projekt mithilfe des Projekt-Assistenten erstellt haben. Sie können diesen Wert manuell ändern. Stellen Sie sicher, dass Sie eine Zeichenfolge verwenden, die Ihren Dienst eindeutig identifiziert.

Verwenden des Windows Medienwiedergabe-Objektmodells

Verwenden Sie die Media.setItemInfo-Methode, um einen Wert für ContentDistributor mithilfe des Windows Medienwiedergabe-Objektmodells anzugeben. Der folgende Beispielcode gibt den Wert "Proseware" für ContentDistributor für das aktuell wiedergegebene Medienelement an:

// Retrieve the current media item.
var theMedia = Player.currentMedia;

//Test whether the media item was retrieved.
if(theMedia)
{
    // Set the ContentDistributor value.
    theMedia.setItemInfo("ContentDistributor", "Proseware");
}

Verwenden des Windows Media Format SDK

Das Windows Medienwiedergabe SDK enthält eine C++-Beispieldatei mit dem Namen SetContentDistributor.cpp, die veranschaulicht, wie das Windows Media Format 9 Series SDK zum Hinzufügen des WM/ContentDistributor-Attributs verwendet wird. Sie können diese Beispieldatei im Ordner Metadaten suchen, in dem Sie das SDK installiert haben. Um diesen Code verwenden zu können, müssen Sie die folgenden Schritte ausführen:

  1. Installieren Sie das SDK der Windows Media Format 9-Serie, und konfigurieren Sie die Runtime wie in der Dokumentation beschrieben.
  2. Erstellen Sie ein neues leeres C++-Projekt in Visual Studio, und fügen Sie dem Projekt die Beispieldatei SetContentDistributor.cpp hinzu.
  3. Fügen Sie der Liste der Dateipfade den Pfad zu den Lib-Ordnern des Windows Media Format 9 Series SDK hinzu. Wählen Sie im Menü Extras den Befehl Optionen.
  4. Klicken Sie im Dialogfeld Optionen auf Projekte, und klicken Sie dann auf VC++-Verzeichnisse.
  5. Klicken Sie im Dropdownlistenfeld Verzeichnisse für anzeigen auf Bibliotheksdateien.
  6. Verwenden Sie die Schaltflächen, um die Pfade zu den Listenfeldern hinzuzufügen.
  7. Öffnen Sie das Dialogfeld Eigenschaftenseiten für Ihr Projekt. Wählen Sie Konfigurationseigenschaften, dann Linker und dann Eingabe aus. Geben Sie "wmvcore.lib" in das Textfeld Zusätzliche Abhängigkeiten ein .

Der Beispielcode erstellt ein Befehlszeilenprogramm. Die Argumente, die Sie beim Ausführen des Programms angeben, geben den Pfad zur zu ändernden digitalen Mediendatei und eine Zeichenfolge für den ContentDistributor-Attributwert an. Der Code verwendet IWMHeaderInfo::SetAttribute , um das Attribut der angegebenen Datei hinzuzufügen. Sie können dieses Beispiel unverändert oder als Ausgangspunkt für Ihr eigenes Programm verwenden.

Allgemeine Informationen für Onlineshops vom Typ 1 und Typ 2