MmMapIoSpace函数 是用来把wince中的物理地址转换成虚拟地址的一个函数。这个函数在ceddk.h和ceddk.lib中有详细的定义。
PVOID MmMapIoSpace(
PHYSICAL_ADDRESS PhysicalAddress,
ULONG NumberOfBytes,
BOOLEAN CacheEnable
); xDBO#w "}
如果参数PhysicalAddress用的是OEMAddressTable的Physical Address,则要把这个地址右移8位.
如果参数PhysicalAddress用的是OEMAddressTable的Virtual Address,则不需要右移.
BOOL VirtualCopy(
LPVOID lpvDest,
LPVOID lpvSrc,
DWORD cbSize,
DWORD fdwProtect
);
如果参数fdwProtect 用的是PAGE_PHYSICAL, 则lpvSrc可以用OEMAddressTable的Physical Address, 并需要把这个地址右移8位.
如果参数fdwProtect 没有PAGE_PHYSICAL, 则lpvSrc可以用OEMAddressTable的Virtual Address, 不需要把这个地址右移.