Irql_Miscellaneous_Function Regel (ndis)

Die Irql_Miscellaneous_Function-Regel gibt an, dass die NDIS-Funktionen auf den korrekten IRQL-Ebenen aufgerufen werden müssen.

Diese Regel überprüft die folgenden Funktionen:

KeGetCurrentProcessorNumberNdisAllocateFromNPagedLookasideListNdisAllocateGenericObjectNdisAllocateIoWorkItemNdisAllocateMemoryWithTagPriorityNdisAnsiStringToUni codeStringNdisCloseConfigurationNdisCloseFileNdisDeleteNPagedLookasideListNdisDeregisterDeviceExNdisEqualMemoryNdisEqualUnicodeStringNdisFreeGenericObjectNdisFreeIoWorkItemNdisFreeMemoryNdisFreeSpinLockNdisFreeStringNdisFreeToNPagedLookasideListNdisGeneratePartialCancelIdNdisGetCurrentProcessorCountsNdisGetDriverHandleNdisGetRoutineAddressNdisGetSharedDataAlignmentNdisGetVersionNdisInitAnsiStringNdisInitializeListHeadNdisInitializeNPagedLookasideListNdisInitializeSListHeadNdisInitializeStringNdisInitUnicodeStringNdisMapFileNdisOpenConfigurationExNdisOpenConfigurationKeyByIndexNdisOpenConfigurationKeyByNameNdisOpenFileNdisQueryAdapterInstanceNameNdisQueryDepthSListNdisQueueIoWorkItemNdisReadConfigurationNdisReadNetworkAddressNdisReEnumerateProtocolBindingsNdisSetOptionalHandlersNdisSystemProcessorCountNdisUnicodeStringToAnsiStringNdisUnmapFileNdisUpcaseUnicodeStringNdisWaitEventNdisWriteConfigurationNdisWriteErrorLogEntryNdisWriteEventLogEntry

Treibermodell: NDIS

So führen Sie einen Test durch

Beim Kompilieren:

Führen Sie static Driver Verifier aus , und geben Sie die Irql_Miscellaneous_Function Regel an.

Gehen Sie folgendermaßen vor, um Ihren Code zu analysieren:
  1. Bereiten Sie den Code vor (verwenden Sie Rollentypdeklarationen).
  2. Führen Sie Static Driver Verifier aus.
  3. Überprüfen und analysieren Sie die Ergebnisse.

Weitere Informationen finden Sie unter Verwenden der statischen Treiberüberprüfung, um Fehler in Treibern zu finden.

Gilt für:

NdisAllocateFromNPagedLookasideList
NdisAllocateGenericObject
NdisAllocateIoWorkItem
NdisAllocateMemoryWithTagPriority
NdisAnsiStringToUnicodeString
NdisCloseConfiguration
NdisCloseFile
NdisDeleteNPagedLookasideList
NdisDeregisterDeviceEx
NdisEqualMemory
NdisEqualString
NdisEqualUnicodeString
NdisFreeGenericObject
NdisFreeIoWorkItem
NdisFreeMemory
NdisFreeString
NdisFreeToNPagedLookasideList
NdisGeneratePartialCancelId
NdisGetCurrentProcessorCounts
NdisGetRoutineAddress
NdisGetSharedDataAlignment
NdisGetVersion
NdisInitAnsiString
NdisInitializeNPagedLookasideList
NdisInitializeString
NdisInitUnicodeString
NdisMapFile
NdisOpenConfigurationEx
NdisOpenConfigurationKeyByIndex
NdisOpenConfigurationKeyByName
NdisOpenFile
NdisQueryAdapterInstanceName
NdisQueryDepthSList
NdisQueueIoWorkItem
NdisReadConfiguration
NdisReadNetworkAddress
NdisReEnumerateProtocolBindings
NdisRegisterDeviceEx
NdisSetOptionalHandlers
NdisSystemProcessorCount
NdisUnicodeStringToAnsiString
NdisUnmapFile
NdisUpcaseUnicodeString
NdisWaitEvent
NdisWriteConfiguration
NdisWriteErrorLogEntry
NdisWriteEventLogEntry
KeGetCurrentProcessorNumber