Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
The system driver components Drmk.sys and Portcls.sys implement a collection of DRM functions and interfaces that drivers use for managing the digital rights of kernel-streaming audio content. The Drmk.sys component implements a number of DrmXxx functions, and Portcls.sys implements a DRM-specific set of PcXxx functions, and also the IDrmPort and IDrmPort2 interfaces.
Die folgenden DRM-Funktionen sind verfügbar:
Stellt das System mit einer Treiberschnittstelle bereit, die aus einer Liste von Funktionen zum Behandeln geschützter Inhalte besteht. DrmCreateContentMixed
Erstellt eine DRM-Inhalts-ID, um einen KS-Audiodatenstrom zu identifizieren, der gemischte Inhalte aus mehreren Eingabedatenströmen enthält. DrmDestroyContent
Löscht eine DRM-Inhalts-ID. DrmForwardContentToDeviceObject
Authentifiziert einen Treiber und sendet ihn die DRM-Inhalts-ID und die Inhaltsrechte, die das System einem Datenstrom zugewiesen hat, der geschützte Inhalte enthält. DrmForwardContentToFileObject
Obsolete function. DrmForwardContentToInterface
Authentifiziert ein Treiberobjekt und sendet es die DRM-Inhalts-ID und die Inhaltsrechte, die das System einem Datenstrom zugewiesen hat, der geschützte Inhalte enthält. DrmGetContentRights
Ruft die DRM-Inhaltsrechte ab, die das System einer DRM-Inhalts-ID zugewiesen hat. Die Funktionen in dieser Liste werden in der Headerdatei Drmk.h deklariert. Der Kernelmodus-DRMK-Systemtreiber Drmk.sysexportiert die Einstiegspunkte für diese Funktionen.
In Windows XP und höher exportiert der PortCls-Systemtreiber Portcls.syseinen anderen Satz von Einstiegspunkten für die gleichen DRM-Funktionen. Die Namen der PortCls-Funktionen ähneln denen in der vorherigen Liste, mit der Ausnahme, dass sie anstelle von Drm das Präfix PC verwenden:
PcForwardContentToDeviceObject
Diese Funktionsnamen werden in der Headerdatei Portcls.h deklariert. Die Einstiegspunkte in Portcls.sys nicht mehr tun, als die entsprechenden Funktionen in Drmk.sysaufzurufen. Die PortCls-Einstiegspunkte werden einfach zur Vereinfachung bereitgestellt, sodass ein audiotreiber, der bereits mit Portcls.sys verbunden ist, nicht explizit Drmk.sysladen muss.
In Windows XP and later, the same set of functions is also exposed as methods in the IDrmPort and IDrmPort2 interfaces:
IDrmPort2::ForwardContentToDeviceObject
IDrmPort::ForwardContentToFileObject
IDrmPort::ForwardContentToInterface
The IDrmPort and IDrmPort2 interfaces are declared in header file Portcls.h and are implemented in Portcls.sys. Diese Methoden führen nicht mehr aus, als die entsprechenden Funktionen in Drmk.sysaufzurufen. A miniport driver obtains a reference to a IDrmPortx interface by querying its port driver for this interface. The advantage to using a IDrmPortx interface instead of the corresponding DrmXxx or PcXxx functions is that the driver can use this query to determine at run time whether the operating system version supports DRM or not. Dies vereinfacht das Schreiben eines einzelnen Treibers, der sowohl in neueren Versionen von Windows ausgeführt werden kann, die DRM unterstützen, als auch in älteren Versionen, die nicht funktionieren. IDrmPort2 is derived from IDrmPort and provides two additional methods.
The WaveCyclic and WavePci port drivers use the IDrmAudioStream interface if it is supported by the corresponding miniport driver. The port driver calls the IDrmAudioStream::SetContentId method to assign DRM protection to the digital content in an audio stream.
The DEFINE_DRMRIGHTS_DEFAULT macro, which is defined in header file Drmk.h, initializes the members of a DRMRIGHTS structure to their default values.