IMFMediaSession::SetTopology-Methode (mfidl.h)
Legt eine Topologie für die Mediensitzung fest.
Syntax
HRESULT SetTopology(
[in] DWORD dwSetTopologyFlags,
[in] IMFTopology *pTopology
);
Parameter
[in] dwSetTopologyFlags
Bitweise OR mit null oder mehr Flags aus der MFSESSION_SETTOPOLOGY_FLAGS-Enumeration .
[in] pTopology
Zeiger auf die IMFTopology-Schnittstelle des Topologieobjekts.
Rückgabewert
Die Methode gibt ein HRESULT zurück. Mögliches Werte (aber nicht die Einzigen) sind die in der folgenden Tabelle.
Rückgabecode | BESCHREIBUNG |
---|---|
|
Die Methode wurde erfolgreich ausgeführt. |
|
Der Vorgang kann nicht im aktuellen Zustand der Mediensitzung ausgeführt werden. |
|
Die Mediensitzung wurde heruntergefahren. |
|
Die Topologie weist ungültige Werte für mindestens eines der folgenden Attribute auf: |
|
Geschützte Inhalte können beim Debuggen nicht wiedergegeben werden. |
Hinweise
Wenn pTopology eine vollständige Topologie ist, legen Sie das flag MFSESSION_SETTOPOLOGY_NORESOLUTION im dwSetTopologyFlags-Parameter fest. Andernfalls wird angenommen, dass es sich bei der Topologie um eine partielle Topologie handelt. Die Mediensitzung verwendet den Topologieladeprogramm, um eine partielle Topologie in eine vollständige Topologie aufzulösen.
Wenn die Mediensitzung derzeit angehalten oder beendet ist, wird die SetTopology-Methode erst nach dem nächsten Aufruf von IMFMediaSession::Start wirksam.
Wenn die Mediensitzung derzeit oder beim nächsten Aufruf von Start ausgeführt wird, führt die SetTopology-Methode Folgendes aus:
- Wenn das flag MFSESSION_SETTOPOLOGY_IMMEDIATE in dwSetTopologyFlags festgelegt ist, beendet die Mediensitzung die aktuelle Präsentation sofort, löscht alle ausstehenden Topologien und verwendet pTopology , um eine neue Präsentation zu starten.
- Andernfalls wird die pTopology von der Mediensitzung in die Warteschlange eingereiht und die neue Präsentation gestartet, wenn die aktuelle Präsentation abgeschlossen ist. Wenn keine aktuelle Präsentation vorhanden ist, beginnt die neue Präsentation sofort.
- Ab Windows 7 können Sie auch das flag MFSESSION_SETTOPOLOGY_CLEAR_CURRENT angeben, um die aktuelle Topologie zu löschen, aber alle anderen ausstehenden Topologien in der Warteschlange belassen.
Anforderungen
Unterstützte Mindestversion (Client) | Windows Vista [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2008 [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | mfidl.h |
Bibliothek | Mfuuid.lib |