IeXdi2Mem::SearchMemoryX (Windows Embedded CE 6.0)
1/5/2010
This method searches memory for a block that matches a given sequence.
Syntax
HRESULT SearchMemoryX(
[in] DWORD dwCpuNum,
[in] LINEAR_MEM_MAP_TYPE lmt,
[in] ADDRESS_TYPE AddressRangeStart,
[in] ADDRESS_TYPE AddressRangeEnd,
[in] DWORD dwNbElem,
[in] BYTE bAccessWidthInBytes,
[in, size_is(dwNbElem* bAccessWidthInBytes)] BYTE* pbSequenceToSearch,
[out] ADDRESS_TYPE** ppAddressFound
);
Parameters
dwCpuNum
CPU number.This parameter should be 0 if this is not a symmetric multi-processor (SMP). Otherwise, assign dwCpuNum a value between 0 and n-1, where n is the CPU number in the SMP system.
lmt
Linear memory map type.The following memory map types are used by convention:
Value Description LMM_VIRT, 0
Virtual memory
LMM_PHYS, 1
Physical memory
LMM_IO, 2
Peripheral I/O
3 and higher
Free for custom use
- AddressRangeStart
Starting address of the memory block to be searched on the target device.
- AddressRangeEnd
Ending address of the memory block to be searched on the target device.
- *dwNbElem *
Number of elements of bAccessWidthInBytes to be searched.
- bAccessWidthInBytes
Data width in bytes, where byte=1, word=2, dword=4, and so on.
pbSequenceToSearch
Buffer containing the sequence to search.pbSequenceToSearch must be large enough to hold dwNbElem elements.
Note
The server should handle sequence buffers of at least 1 KB.
ppAddressFound
Pointer to first found address, if found. NULL if not found.The buffer for this value is allocated by CoTaskMemAlloc.
Return Value
The following table shows return values for this method.
Value | Description |
---|---|
S_OK |
Indicates the function was successful. |
E_FAIL |
Indicates an unspecified failure. |
E_OUTOFMEMORY |
Indicates an out of memory error. |
E_INVALIDARG |
Indicates one or more invalid arguments. |
EXDI_E_COMMUNICATION |
Indicates a communication error between host driver and debugging target. |
EXDI_E_ACCESSVIOLATION |
Indicates an access violation occurred on at least one element in the address range specified by the operation. |
Remarks
To avoid resource leaking, use CoTaskMemFree to free the task memory used by the buffer for ppAddressFound.
Requirements
Header | eXDI2.h |
Library | ole32.lib, oleaut32.lib |
Windows Embedded CE | Windows CE 5.0 and later |