#ifndef _NTRTL_H
// rev
/**
* RtlCmDecodeMemIoResource contract.
*
* \param ResourceDescriptor Read-only resource descriptor.
* \param Start Optional output for the stored start address.
* \remarks Returns decoded resource length and optionally copies the descriptor Start field. This does not translate a bus address. The descriptor is read-only; provide a valid CM_PARTIAL_RESOURCE_DESCRIPTOR with the appropriate type/large-memory flags, not an arbitrary buffer.
*/
NTSYSAPI
ULONGLONG
NTAPI
RtlCmDecodeMemIoResource(
_In_ const CM_PARTIAL_RESOURCE_DESCRIPTOR *ResourceDescriptor,
_Out_opt_ PULONGLONG Start
);
View code on GitHub// wdm.h
NTSYSAPI ULONGLONG RtlCmDecodeMemIoResource(
[in] PCM_PARTIAL_RESOURCE_DESCRIPTOR Descriptor,
[out, optional] PULONGLONG Start
);
View the official Windows Driver Kit DDI referenceNo description available.
The RtlCmDecodeMemIoResource routine provides the starting address and length of a CM_PARTIAL_RESOURCE_DESCRIPTOR structure that describes a range of memory or I/O port addresses.
Descriptor [in]A pointer to the CM_PARTIAL_RESOURCE_DESCRIPTOR structure to provide the starting address and length for.
Start [out, optional]A pointer to a variable that receives the starting address of the range of memory or I/O port addresses.
RtlCmDecodeMemIoResource returns the length of the address range, in bytes.
The Type member of the CM_PARTIAL_RESOURCE_DESCRIPTOR structure must be CmResourceTypeMemory, CmResourceTypeMemoryLarge, or CmResourceTypePort.
CM_PARTIAL_RESOURCE_DESCRIPTOR