acmDriverPriority-Funktion (msacm.h)

Die Funktion acmDriverPriority ändert die Priorität und den Status eines ACM-Treibers.

Syntax

MMRESULT ACMAPI acmDriverPriority(
  HACMDRIVERID hadid,
  DWORD        dwPriority,
  DWORD        fdwPriority
);

Parameter

hadid

Behandeln Sie den Treiberbezeichner eines installierten ACM-Treibers. Wenn die flags ACM_DRIVERPRIORITYF_BEGIN und ACM_DRIVERPRIORITYF_END angegeben werden, muss dieser Parameter NULL sein.

dwPriority

Neue Priorität für einen globalen ACM-Treiberbezeichner. Ein Nullwert gibt an, dass die Priorität des Treiberbezeichners unverändert bleiben soll. Der Wert 1 gibt an, dass der Treiber als Treiber mit der höchsten Suchpriorität platziert werden soll. Der Wert –1 gibt an, dass der Treiber als Treiber mit der niedrigsten Suchpriorität platziert werden soll. Prioritäten werden nur für globale Treiber verwendet.

fdwPriority

Flags zum Festlegen von Prioritäten von ACM-Treibern. Die folgenden Werte werden definiert.

Wert Bedeutung
ACM_DRIVERPRIORITYF_BEGIN Änderungsbenachrichtigungsübertragungen sollten zurückgestellt werden. Eine Anwendung muss Benachrichtigungsübertragungen so schnell wie möglich mit dem flag ACM_DRIVERPRIORITYF_END wieder aktivieren. Beachten Sie, dass hadidNULL sein muss, dwPriority 0 sein muss und nur das flag ACM_DRIVERPRIORITYF_BEGIN festgelegt werden kann.
ACM_DRIVERPRIORITYF_DISABLE Der ACM-Treiber sollte deaktiviert werden, wenn er derzeit aktiviert ist. Das Deaktivieren eines deaktivierten Treibers bringt nichts.
ACM_DRIVERPRIORITYF_ENABLE Der ACM-Treiber sollte aktiviert sein, wenn er derzeit deaktiviert ist. Das Aktivieren eines aktivierten Treibers bringt nichts.
ACM_DRIVERPRIORITYF_END Der aufrufende Task möchte Änderungsbenachrichtigungsübertragungen erneut aktivieren. Eine Anwendung muss acmDriverPriority mit ACM_DRIVERPRIORITYF_END für jeden erfolgreichen Aufruf mit dem flag ACM_DRIVERPRIORITYF_BEGIN aufrufen. Beachten Sie, dass hadidNULL sein muss, dwPriority 0 sein muss und nur das ACM_DRIVERPRIORITYF_END-Flag festgelegt werden kann.

Rückgabewert

Gibt null zurück, wenn der Vorgang erfolgreich war oder andernfalls ein Fehler. Mögliche Fehlerwerte sind:

Rückgabecode Beschreibung
MMSYSERR_ALLOCATED
Die verzögerte Broadcastsperre gehört einer anderen Aufgabe.
MMSYSERR_INVALFLAG
Mindestens ein Flag ist ungültig.
MMSYSERR_INVALHANDLE
Das angegebene Handle ist ungültig.
MMSYSERR_INVALPARAM
Mindestens ein Parameter ist ungültig.
MMSYSERR_NOTSUPPORTED
Der angeforderte Vorgang wird für den angegebenen Treiber nicht unterstützt. Beispielsweise unterstützen lokale Und Benachrichtigungstreiberbezeichner keine Prioritäten (können aber aktiviert und deaktiviert werden). Wenn eine Anwendung einen nonzero-Wert für dwPriority für local angibt und Treiberbezeichner benachrichtigt, wird dieser Fehler zurückgegeben.

Hinweise

Alle Treiberbezeichner können aktiviert und deaktiviert werden, einschließlich globaler, lokaler und Benachrichtigungstreiberbezeichner.

Wenn mehr als ein globaler Treiberbezeichner aktiviert, deaktiviert oder in der Priorität verschoben werden muss, sollte eine Anwendung Änderungsbenachrichtigungsübertragungen mithilfe des flags ACM_DRIVERPRIORITYF_BEGIN zurückstellen. Eine einzelne Änderungsbenachrichtigung wird gesendet, wenn das flag ACM_DRIVERPRIORITYF_END angegeben wird.

Eine Anwendung kann die Funktion mit dem acmMetrics-ACM_METRIC_DRIVER_PRIORITY Metrikindex verwenden, um die aktuelle Priorität eines globalen Treibers abzurufen. Treiber werden von der acmDriverEnum-Funktion immer von der höchsten bis zur niedrigsten Priorität aufgelistet.

Alle aktivierten Treiberbezeichner erhalten Änderungsbenachrichtigungen. Eine Anwendung kann eine Benachrichtigung registrieren, indem sie die Funktion acmDriverAdd in Verbindung mit dem flag ACM_DRIVERADDF_NOTIFYHWND verwendet. Änderungen an nicht globalen Treiberbezeichnern werden nicht übertragen.

Prioritäten werden einfach für die Suchreihenfolge verwendet, wenn eine Anwendung keinen Treiber angibt. Die Erhöhung der Priorität eines Treibers hat keine Auswirkungen auf die Leistung eines Treibers.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 2000 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows 2000 Server [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile msacm.h
Bibliothek Msacm32.lib
DLL Msacm32.dll

Weitere Informationen

Audiokomprimierungsfunktionen

Audiokomprimierungs-Manager