搜索某一个进程的内存地址是否包括某一个数值解决思路

搜索某一个进程的内存地址是否包括某一个数值
 

搜索某一个进程的内存地址包括某一个数值(4字节),readprocessmemory用得不太熟悉,
VB code

processname是进程名findvalue是要搜索的值,findprocessmemoryvalueaddress返回值是这个值所在的内存地址
Function FindProcessMemoryValueAddress(processName As String, FindValue As Long) As Long
    Dim ProHandle As Long
    If FindProcessHandle > 0 Then CloseHandle (FindProcessHandle)
    FindProcessHandle = OpenProcess(PROCESS_ALL_ACCESS, False, HasProName(processName))

    Dim MemBf(3) As Byte
    Dim i As Long, l As Long
    Dim TmpBuf As Long
    Dim LocalAdsIndex As Long
    If FindProcessHandle = 0 Then Exit Function
    For i = &H14E620 To &H7FFFF000 Step 4
        If ReadProcessMemory(FindProcessHandle, ByVal i, MemBf(0), 4, ByVal 0) > 0 Then
            CopyMemory TmpBuf, MemBf(3), 4
            If TmpBuf = FindValue Then
                FindProcessMemoryValueAddress = i
                Exit For
            End If
        End If
    Next
End Function


这样好像找不到

------解决方案--------------------
可以先用WinHex工具看能找到吧 如果能找到,然后看下内存址是多少 和你搜索的地址是否一样
------解决方案--------------------
参考MSDN里面的例子程序pwalk
------解决方案--------------------
探讨

可以先用WinHex工具看能找到吧 如果能找到,然后看下内存址是多少 和你搜索的地址是否一样

------解决方案--------------------
winhex不能在文件搜索吗?
文件搜索和内存搜索,搜到的地址有区别,但是存在就应该能搜到。搜不到是处理的不对。
比如For i = &H14E620 To &H7FFFF000 Step 4,这里,你的&H14E620这个地址是怎么来的?正确吗?是不是大了?
提权了没?