共用方式為


RDBSS 所定義的宏

Window Driver Kit (WDK) 標頭檔定義一些有用的宏,這些標頭檔會呼叫這些 RDBSS 常式或其他核心常式。 其中有些宏通常會使用,而不是直接呼叫 RDBSS 常式。 其中一些宏會作為便利常式使用。

下列宏是由 RDBSS 所定義。

巨集 描述

RxAcquirePrefixTableLockExclusive (TABLEWAIT)

此宏會以獨佔模式取得變更作業的前置詞資料表鎖定。

RxAcquirePrefixTableLockShared (TABLEWAIT)

此宏會取得共用模式中的前置資料表鎖定,以進行查閱作業。

RxAllocatePoolWithTag (類型大小標記)

在已檢查的組建上,此宏會從集區配置記憶體,並在區塊開頭有四位元組標記,可用來協助攔截記憶體回收的實例。

在零售組建上,此宏會成為 ExAllocatePoolWithTag的直接呼叫。

RxCheckMemoryBlock (ptr)

在核取的組建上,此宏會檢查記憶體區塊是否有特殊RX_POOL_HEADER標頭簽章。

在零售組建上,此宏不會執行任何動作。

RxDereferenceAndFinalizeNetFcb (Fcb、RxCoNtextRecursiveFinalizeForceFinalize)

這個宏用來追蹤 FCB 結構的取值作業。

請注意,這個宏會操作參考計數,也會傳回最終取值呼叫的狀態。

RxDereferenceNetFcb (Fcb)

這個宏用來追蹤 FCB 結構的取值作業。

請注意,這個宏會操作參考計數,也會傳回最終取值呼叫的狀態。

RxDereferenceNetFobx (Fobx,LockHoldingState)

這個宏可用來追蹤 FOBX 結構的取值作業。

RxDereferenceNetRoot (NetRootLockHoldingState)

這個宏用來追蹤NET_ROOT結構的取值作業。

RxDereferenceSrvCall (SrvCallLockHoldingState)

這個宏可用來追蹤SRV_CALL結構的取值作業。

RxDereferenceSrvOpen ( SrvOpenLockHoldingState)

這個宏可用來追蹤SRV_OPEN結構的取值作業。

RxDereferenceVNetRoot ( VNetRootLockHoldingState)

這個宏是用來追蹤V_NET_ROOT結構的取值作業。

RxFcbAcquiredShared (RXCONTEXTFCB)

此宏會檢查目前線程是否具有共用模式中一般資源的存取權。 此宏會呼叫 ExIsResourceAcquiredSharedLite 常式。

RxFillAndInstallFastIoDispatch (__devobj__fastiodisp)

此宏會 呼叫 __RxFillAndInstallFastIoDispatch ,以填入快速 I/O 分派向量,使其與一般分派 I/O 向量相同,並將它安裝到與所傳遞裝置物件相關聯的驅動程式物件中。

RxFreePool (ptr)

在核取的組建上,此宏會釋放記憶體集區。

在零售組建上,此宏會成為 ExFreePool的直接呼叫。

RxIsFcbAcquiredShared (FCB)

此宏會檢查目前線程是否具有共用模式中一般資源的存取權。 此宏會呼叫 ExIsResourceAcquiredSharedLite 常式。

RxIsFcbAcquiredExclusive (FCB)

此宏會檢查目前線程是否具有獨佔模式中一般資源的存取權。 此宏會呼叫 ExIsResourceAcquiredExclusiveLite 常式。

RxIsFcbAcquired (FCB)

此宏會檢查目前線程是否具有共用或獨佔模式中一般資源的存取權。 此宏會呼叫 ExIsResourceAcquiredSharedLiteExIsResourceAcquiredExclusiveLite 常式。

RxIsPrefixTableLockAcquired (TABLE)

這個宏會指出是否以獨佔或共用模式取得前置詞資料表鎖定。

RxIsPrefixTableLockExclusive (TABLE)

這個宏會指出是否以獨佔模式取得前置詞資料表鎖定。

RxLog (Args)

在核取的組建上,此宏會呼叫 _RxLog 常式。

在零售組建上,此宏不會執行任何動作。

請注意, RxLog 的引數必須加上額外的括弧,才能在應該關閉記錄時轉譯成 Null 呼叫。

RxLogEvent (_DeviceObject_OriginatorId_EventId_Status)

此宏會呼叫 RxLogEventDirect 常式。

RxLogFailure (_DeviceObject_OriginatorId、_EventId_Status)

此宏會呼叫 RxLogEventDirect 常式。

RxLogFailureWithBuffer (_DeviceObject_OriginatorId_EventId, _Status_Buffer_Length)

此宏會呼叫 RxLogEventWithBufferDirect 常式。

RxLogRetail (Args)

在核取的組建上,此宏會呼叫 _RxLog 常式。

在零售組建上,此宏不會執行任何動作。

請注意, RxLogRetail 的引數必須以額外的括弧括住,才能在記錄應該關閉時轉譯成 Null 呼叫。

RxReferenceNetFcb (Fcb)

這個宏是用來追蹤 FCB 結構的參考作業。

RxReferenceNetFobx (Fobx)

這個宏可用來追蹤 FOBX 結構的參考作業。 記錄系統和 WMI 可以存取這些參考作業的記錄。

RxReferenceNetRoot (NetRoot)

這個宏是用來追蹤NET_ROOT結構的參考作業。 記錄系統和 Windows Management Instrumentation (WMI) 可以存取這些參考作業的記錄。

RxReferenceSrvCall (SrvCall)

此宏可用來追蹤不在延遲程序呼叫 (DPC) 層級SRV_CALL結構的參考作業。

RxReferenceSrvCallAtDpc (SrvCall)

這個宏可用來追蹤 DPC 層級SRV_CALL結構的參考作業。

RxReferenceSrvOpen (SrvOpen)

這個宏是用來追蹤SRV_OPEN結構的參考作業。

RxReferenceVNetRoot (VNetRoot)

這個宏是用來追蹤V_NET_ROOT結構的參考作業。

RxReleasePrefixTableLock (TABLE)

這個宏會釋放前置詞資料表鎖定。

RxSynchronizeBlockingOperations (RXCONTEXTFCBIOQUEUE)

此宏會將封鎖 I/O 要求同步處理至相同的工作佇列。 在 Windows Server 2003 上,此宏會呼叫 __RxSynchronizeBlockingOperations 常式,並將 DropFcbLock 參數設定為 FALSE

在 Windows XP 和 Windows 2000 上,此宏會呼叫 __RxSynchronizeBlockingOperationsMaybeDroppingFcbLock 常式,並將 DropFcbLock 參數設定為 FALSE

RxSynchronizeBlockingOperations (RXCONTEXTFCBIOQUEUE)

此宏會將封鎖 I/O 要求同步處理至相同的工作佇列。 在 Windows Server 2003 上,此宏會呼叫 __RxSynchronizeBlockingOperations 常式,並將 DropFcbLock 參數設定為 TRUE

在 Windows XP 和 Windows 2000 上,此宏會呼叫 __RxSynchronizeBlockingOperationsMaybeDroppingFcbLock 常式,並將 DropFcbLock 參數設定為 TRUE