Verwenden von Skins mit dem Windows Media Player-Steuerelement

Wenn Sie das Windows Media Player in ein C++-Programm einbetten, können Sie die Player-Benutzeroberfläche anpassen, indem Sie eine Skindefinitionsdatei darauf anwenden. Eine Skindefinitionsdatei ist ein XML-basiertes Dokument, das das Layout von standardmäßigen und anpassbaren Benutzeroberflächenkomponenten und allen zugehörigen Grafiken an gibt. Mit microsoft JScript können Sie das Verhalten dieser Komponenten angeben und das Windows Media Player-Steuerelement ohne den Aufwand der C++- und COM-Syntax bearbeiten.

Skins bieten eine einfache Möglichkeit, Ihren Benutzeroberflächencode und Ihren Hauptprogrammcode getrennt zu halten, damit sie unabhängig voneinander verwaltet und entwickelt werden können. Sie können auch Skins wiederverwenden, die ursprünglich für die Verwendung durch den eigenständigen Player im Skinmodus entwickelt wurden. Skincode, den Sie speziell für C++-Programme entwerfen, kann mit Ihren Programmen über ein skriptfähiges Objekt interagieren, das Ihr Programm bereitstellen kann.

Um den Skinmodus für das Windows Media Player zu aktivieren, muss Das Programm die IWMPRemoteMediaServices-Schnittstelle implementieren. Obwohl Sie Skins mit dem Steuerelement verwenden und das Steuerelement gleichzeitig remote verwenden können, können Sie diese Schnittstelle verwenden, um beide Funktionen zu aktivieren, ohne das andere zu aktivieren. Um Remoting zu deaktivieren, übergeben Sie einfach den Wert "Local" als out-Parameter der GetServiceType-Methode und geben ein HRESULT von E NOTIMPL von der _ GetApplicationName-Methode zurück.

Um das steuerelement Windows Media Player in den Skinmodus zu ändern, rufen Sie die IWMPPlayer::p ut _ uiMode-Methode auf, und übergeben Sie dabei den Wert "custom". Geben Sie den Pfad und den Dateinamen der zu verwendenden Skindefinitionsdatei an, indem Sie sie von der IWMPRemoteMediaServices::GetCustomUIMode-Methode zurückgeben.

Wenn Sie ein skriptfähiges Objekt für die Kommunikation zwischen Ihrer Skin und Ihrem Programm bereitstellen möchten, übergeben Sie einen Namen und einen Zeiger auf einen IDispatch-Zeiger als die beiden out-Parameter der IWMPRemoteMediaServices::GetScriptableObject-Methode. Ihre Skin kann dann Aufrufe an das skriptfähige Objekt unter Verwendung des angegebenen Namens ausführen, als wäre es ein globales Attribut, das dem globalen Attribut des Players ähnelt.

Eine Skin, die auf ein Remotesteuerfeld angewendet Windows Media Player kann mithilfe eines anderen globalen Attributs namens playerApplication auf das PlayerApplication-Objekt zugreifen. Da Skins nicht auf die Player.playerApplication-Eigenschaft zugreifen können, müssen Sie dieses globale Attribut verwenden, wenn Ihr Skincode das Andocken und Abdocken verwalten soll.

Beispiele

Das Windows Media Player SDK-Setuppaket installiert ein Beispiel, das das Anwenden einer Skin auf das Windows Media Player veranschaulicht. Weitere Informationen finden Sie im RemoteSkin-Beispiel.

Beispiele

Verwenden des Windows Media Player-Steuerelements in einem C++-Programm