Funzione NdisMWriteLogData (ndis.h)

NdisMWriteLogData trasferisce le informazioni fornite dal driver nel file di log per l'utilizzo e la visualizzazione da un'applicazione Win32 dedicata al driver.

Sintassi

NDIS_STATUS NdisMWriteLogData(
  [in] NDIS_HANDLE LogHandle,
  [in] PVOID       LogBuffer,
  [in] UINT        LogBufferSize
);

Parametri

[in] LogHandle

Specifica l'handle restituito da NdisMCreateLog.

[in] LogBuffer

Puntatore a un buffer allocato del driver contenente le informazioni da scrivere.

[in] LogBufferSize

Specifica il numero di byte di dati da copiare nel file di log.

Valore restituito

NdisMWriteLogData può restituire uno dei seguenti elementi:

Codice restituito Descrizione
NDIS_STATUS_SUCCESS
I dati forniti dal driver in LogBuffer sono stati copiati nel file di log.
NDIS_STATUS_BUFFER_OVERFLOW
Il logBufferSize specificato è troppo grande, ovvero maggiore del file di log stesso.

Commenti

Se l'applicazione dedicata al driver ha una richiesta in sospeso per i dati dei file di log, NdisMWriteLogData soddisfa tale richiesta non appena ha copiato le informazioni fornite dal driver nel file di log.

Il driver miniport può fornire un puntatore LogBuffer a una posizione nello stack del kernel se è attualmente in esecuzione in IRQL < DISPATCH_LEVEL. In caso contrario , LogBuffer deve accedere a un buffer allocato dal pool non a pagina.

Il driver deve rilasciare qualsiasi blocco di spin che sta tenendo prima di chiamare NdisMWriteLogData.

NdisMWriteLogData non riconosce i limiti tra i record di log, né la funzione Win32, DeviceIoControl, che le applicazioni possono chiamare con IOCTL_NDIS_GET_LOG_DATA per recuperare i dati scritti in un file di log NDIS da un driver miniport NDIS. NdisMWriteLogData scrive tutti i dati forniti dal driver miniport in LogBuffer nel file di log come flusso di byte. DeviceIoControl legge anche i dati di un log come flusso di byte.

Di conseguenza, un'applicazione che legge un log NDIS deve raccogliere dati recuperati nei record. Per aiutare tale applicazione a raccogliere record a lunghezza variabile, qualsiasi driver miniport che scrive in tale log può inserire un marcatore all'inizio di ogni record. L'applicazione che formatta i dati recuperati può quindi cercare questi marcatori per determinare l'inizio di ogni record.

Requisiti

Requisito Valore
Client minimo supportato Supportato per i driver NDIS 6.0 e NDIS 5.1 (vedere NdisMWriteLogData (NDIS 5.1) in Windows Vista. Supportato per i driver NDIS 5.1 (vedere NdisMWriteLogData (NDIS 5.1) in Windows XP.
Piattaforma di destinazione Universale
Intestazione ndis.h (includere Ndis.h)
Libreria Ndis.lib
IRQL <= DISPATCH_LEVEL
Regole di conformità DDI Irql_Miniport_Driver_Function(ndis)

Vedi anche

NdisAllocateFromNPagedLookasideList NdisAllocateMemoryWithTagPriority

NdisMCloseLog

NdisMCreateLog

NdisMFlushLog

NdisReleaseSpinLock