KIPI_BROADCAST_WORKER funzione di callback (wdm.h)

La routine IpiGenericCall viene eseguita simultaneamente in tutti i processori.

Sintassi

KIPI_BROADCAST_WORKER KipiBroadcastWorker;

ULONG_PTR KipiBroadcastWorker(
  [in] ULONG_PTR Argument
)
{...}

Parametri

[in] Argument

Fornisce il valore passato alla routine KeIpiGenericCall che ha chiamato IpiGenericCall.

Valore restituito

IpiGenericCall restituisce un valore definito dal driver. Se IpiGenericCall è stato eseguito sullo stesso processore che ha chiamato KeIpiGenericCall, KeIpiGenericCall restituisce il valore definito dal driver restituito da IpiGenericCall . In caso contrario, il valore viene ignorato.

Commenti

Le routine IpiGenericCall vengono eseguite in IRQL = IPI_LEVEL, che è maggiore di DIRQL per ogni dispositivo. Le routine IpiGenericCall devono soddisfare le stesse restrizioni delle routine di callback di controllo dei bug. Per altre informazioni su queste restrizioni, vedere Scrittura di una routine di callback controllo bug.

Esempio

Per definire una routine di callback IpiGenericCall , è innanzitutto necessario fornire una dichiarazione di funzione che identifica il tipo di routine di callback che si sta definendo. Windows fornisce un set di tipi di funzione di callback per i driver. La dichiarazione di una funzione tramite i tipi di funzione di callback consente di analizzare il codice per i driver, l'SDV ( Static Driver Verifier ) e altri strumenti di verifica di trovare errori ed è un requisito per la scrittura di driver per il sistema operativo Windows.

Ad esempio, per definire una routine di callback IpiGenericCall denominata MyIpiGenericCall, usare il tipo di KIPI_BROADCAST_WORKER, come illustrato nell'esempio di codice seguente:

KIPI_BROADCAST_WORKER MyIpiGenericCall;

Implementare quindi la routine di callback come indicato di seguito:

_Use_decl_annotations_
ULONG_PTR
  MyIpiGenericCall(
    ULONG_PTR  Argument
    )
  {
      // Function body
  }

Il tipo di funzione KIPI_BROADCAST_WORKER è definito nel file di intestazione Wdm.h. Per identificare in modo più accurato gli errori quando si eseguono gli strumenti di analisi del codice, assicurarsi di aggiungere l'annotazione Use_decl_annotations alla definizione della funzione. L'annotazione Use_decl_annotations garantisce che vengano utilizzate le annotazioni applicate al tipo di funzione KIPI_BROADCAST_WORKER nel file di intestazione. Per altre informazioni sui requisiti per le dichiarazioni di funzione, vedere Dichiarazione di funzioni tramite tipi di ruolo di funzione per i driver WDM. Per informazioni sulle Use_decl_annotations, vedere Annotazione del comportamento della funzione.

Requisiti

   
Piattaforma di destinazione Desktop
Intestazione wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)
IRQL Chiamato a IPI_LEVEL.

Vedi anche

KeIpiGenericCall