Hi guys,

I'm in the process of writing my very first VxD and was wondering about the procedure for validating a range of memory.

I d/l the VMM reference and found a couple of API's that look like they might work...

Given a selector:offset type address like 0030:C24B3B78 and a size for the memory block,

1) I called Map_Flat to get the linear addresses for the beginning and end of the address range

2) Then I got the page numbers from the converted linear addresses by shifting right 12 bits and then called _PageCheckLinRange on the pages within my given adress range.

Tracing the code in SoftICE, it appears to be working... BUT this is my first encounter with VxDs, linear addressing, and paging so I was hoping for a little feedback as to wheather this is the best procedure for verifying a range of memory in a VxD.

Thanks In Advance,

PS. Many thanks to Iczelion for his excellent VxD tuts :)
Posted on 2001-08-27 13:01:16 by Clandestiny