Windows 内核的已过时例程

导出以下过时例程以支持现有二进制文件:

已过时的例程 说明
ExAcquireResourceExclusive

请改用 ExAcquireResourceExclusiveLite 。

ExAcquireResourceShared

请改用 ExAcquireResourceSharedLite 。

ExAllocateFromZone

请改用 lookaside 列表。 有关详细信息,请参阅 缓冲区管理。

ExConvertExclusiveToShared

请改用 ExConvertExclusiveToSharedLite 。

ExDeleteResource

请改用 ExDeleteResourceLite 。

ExExtendZone

请改用 lookaside 列表。 有关详细信息,请参阅 缓冲区管理。

ExFreeToZone

请改用 lookaside 列表。 有关详细信息,请参阅 缓冲区管理。

ExInitializeResource

请改用 ExInitializeResourceLite 。

ExInitializeWorkItem

请改用 IoAllocateWorkItem 。

ExInitializeZone

请改用 lookaside 列表。 有关详细信息,请参阅 缓冲区管理。

ExInterlockedAllocateFromZone

请改用 lookaside 列表。 有关详细信息,请参阅 缓冲区管理。

ExInterlockedDecrementLong

请改用 InterlockedDecrement 。

ExInterlockedExchangeAddLargeInteger

有关以原子方式添加两个 64 位数字的详细信息,请参阅 InterlockedExchangeAdd64。

ExInterlockedExchangeUlong

请改用 InterlockedExchange 。

ExInterlockedExtendZone

请改用 lookaside 列表。 有关详细信息,请参阅 缓冲区管理。

ExInterlockedFreeToZone

请改用 lookaside 列表。 有关详细信息,请参阅 缓冲区管理。

ExInterlockedIncrementLong

请改用 InterlockedIncrement 。

ExIsFullZone

请改用 lookaside 列表。 有关详细信息,请参阅 缓冲区管理。

ExIsObjectInFirstZoneSegment

请改用 lookaside 列表。 有关详细信息,请参阅 缓冲区管理。

ExIsResourceAcquired

请改用 ExIsResourceAcquiredLite 。

ExIsResourceAcquiredExclusive

请改用 ExIsResourceAcquiredExclusiveLite 。

ExIsResourceAcquiredShared

请改用 ExIsResourceAcquiredSharedLite 。

ExReleaseResource

请改用 ExReleaseResourceLite 。

ExReleaseResourceForThread

请改用 ExReleaseResourceForThreadLite 。

IoAllocateAdapterChannel

请改用 AllocateAdapterChannel 。

IoAssignResources

PnP 设备的驱动程序由 PnP 管理器分配资源,该管理器会随每个 IRP_MN_START_DEVICE 请求一起传递资源列表。 必须支持 PnP 管理器无法枚举的旧设备的驱动程序应改用 IoReportDetectedDevice 和 IoReportResourceForDetection 。

IoAttachDeviceByPointer

请改用 IoAttachDeviceToDeviceStack 。

IoFlushAdapterBuffers

请改用 FlushAdapterBuffers 。

IoFreeAdapterChannel

请改用 FreeAdapterChannel 。

IoFreeMapRegisters

请改用 FreeMapRegisters 。

IoMapTransfer

请改用 MapTransfer 。

IoQueryDeviceDescription

此例程从 \Registry\Machine\Hardware\Description 树中检索有关给定总线、控制器或外围设备对象的硬件配置信息,或者这三种类型的任何组合。 需要硬件配置信息的驱动程序应改用 IoGetDeviceProperty 。

IoReportResourceUsage

此例程声明硬件资源,例如中断向量、设备内存范围或 \Registry\Machine\Hardware\ResourceMap 树中的特定 DMA 控制器通道,以便后续加载的驱动程序无法尝试使用相同的资源。 如果新驱动程序必须支持不可 PnP 枚举的旧设备,则驱动程序应调用 IoReportResourceForDetection 来声明设备的资源。

KeGetDcacheFillSize

驱动程序应改为调用 GetDmaAlignment 。

MmCreateMdl

请改用 IoAllocateMdl 。

MmIsNonPagedSystemAddressValid

AllocateAdapterChannel
ExAcquireResourceExclusiveLite
ExAcquireResourceSharedLite
ExConvertExclusiveToSharedLite
ExDeleteResourceLite
ExInitializeResourceLite
ExIsResourceAcquiredExclusiveLite
ExIsResourceAcquiredSharedLite
ExReleaseResourceForThreadLite
ExReleaseResourceLite
InterlockedDecrement
InterlockedExchange
InterlockedIncrement
FlushAdapterBuffers
FreeAdapterChannel
FreeMapRegisters
GetDmaAlignment
InterlockedExchangeAdd64
IoAllocateMdl
IoAllocateWorkItem
IoAttachDeviceToDeviceStack
IoGetDeviceProperty
IoReportDetectedDevice
IoReportResourceForDetection
IRP_MN_START_DEVICE
MapTransfer