Freigeben über


IWDFInterrupt::SetPolicy-Methode (wudfddi.h)

[Warnung: UMDF 2 ist die neueste Version von UMDF und ersetzt UMDF 1. Alle neuen UMDF-Treiber sollten mit UMDF 2 geschrieben werden. UMDF 1 werden keine neuen Features hinzugefügt, und die Unterstützung für UMDF 1 in neueren Versionen von Windows 10 ist eingeschränkt. Universelle Windows-Treiber müssen UMDF 2 verwenden. Weitere Informationen finden Sie unter Erste Schritte mit UMDF.]

Die SetPolicy-Methode gibt die Interruptpriorität, die Prozessoraffinität und die Affinitätsrichtlinie für einen angegebenen Interrupt an.

Syntax

void SetPolicy(
  [in] WDF_INTERRUPT_POLICY   Policy,
  [in] WDF_INTERRUPT_PRIORITY Priority,
  [in] KAFFINITY              TargetProcessorSet
);

Parameter

[in] Policy

Ein WDF_INTERRUPT_POLICY typisierter Enumerator, der eine Prozessoraffinitätsrichtlinie für den Interrupt angibt.

[in] Priority

Ein WDF_INTERRUPT_PRIORITY typisierter Enumerator, der eine Priorität für den Interrupt angibt.

[in] TargetProcessorSet

Ein KAFFINITY-typisierter Wert, der eine Prozessoraffinität für den Interrupt angibt, wenn der Parameter Policy auf WdfIrqPolicySpecifiedProcessors festgelegt ist.

Rückgabewert

Keine

Bemerkungen

Ab Windows Vista können Treiber die Priorität, die Prozessoraffinität und die Affinitätsrichtlinie eines Interrupts angeben. Weitere Informationen zur Verwendung der Registrierung zum Überschreiben der von SetPolicy festgelegten Werte finden Sie unter Interrupt Affinity and Priority.For more information about how to use the registry to override the values that SetPolicy sets, see Interrupt Affinity and Priority.

Wenn ein Treiber unter einer Betriebssystemversion ausgeführt wird, die vor Windows Vista liegt, ignoriert das Framework die Werte, die der Treiber beim Aufrufen von SetPolicy angibt.

Weitere Informationen zu Registrierungswerten und INF-Abschnitten, in denen die Priorität, die Prozessoraffinität und die Affinitätsrichtlinie eines Interrupts angegeben werden, finden Sie unter Interrupt affinity and priority.for more information about registry values and INF sections that specify an priority eines Interrupts, processor affinity, and affinity policy, see Interrupt Affinity and Priority.

Wenn ein Treiber SetPolicy aufruft, muss er dies in seiner IDriverEntry::OnDeviceAdd-Rückruffunktion tun, nachdem er die IWDFDevice3::CreateInterrupt-Methode aufgerufen hat .

Weitere Informationen zur Behandlung von Interrupts in UMDF-Treibern finden Sie unter Zugreifen auf Hardware und Behandeln von Interrupts.

Beispiele

Im folgenden Codebeispiel wird dem Prozessor 0 ein Geräteunterbrechung mit normaler Priorität zugewiesen.

#define AFFINITY_MASK(n) ((ULONG_PTR)1 << (n))

pIWdfInterrupt->SetPolicy(
                          WdfIrqPolicySpecifiedProcessors,
                          WdfIrqPriorityNormal,
                          AFFINITY_MASK(0)
                          );

Anforderungen

Anforderung Wert
Ende des Supports In UMDF 2.0 und höher nicht verfügbar.
Zielplattform Desktop
UMDF-Mindestversion 1.11
Kopfzeile wudfddi.h
DLL WUDFx.dll

Weitere Informationen

IWDFInterrupt

KAFFINITY

WDF_INTERRUPT_POLICY

WDF_INTERRUPT_PRIORITY