流通纪念币 最新消息:VB.NET中怎么调用ReadProcessMemory?

来源:百度文库 编辑:中科新闻网 时间:2024/05/01 19:41:09
请举例说明~重点说明下第3个参数!
为什么在buffer那里显示“类型BYTE的1维数组的值无法转换成Integer”
并且用buffer.Length时候显示错误不是SYSTEM.LENTH中的方法

以前有人问过,给你说一下:
声明
Public Declare Function ReadProcessMemory Lib "kernel32" (ByVal hProcess As Integer, ByVal lpBaseAddress As Integer, ByVal lpBuffer() As Byte, ByVal nSize As Integer, ByRef lpNumberOfBytesWritten As Integer) As Integer

示例:
Private Const PROCESS_VM_READ As Long = &H10
Sub Main()
Dim ph As Integer
Dim i As Integer
Dim h As Integer
Dim buffer(20) As Byte
Dim bytesRead As Integer
'获得进程
ph = OpenProcess(PROCESS_ALL_ACCESS, False, 1832)
If ph Then
MsgBox.Show("true")
h = ReadProcessMemory(ph, &H403000, buffer, buffer.Length, bytesRead)
For i = 0 To buffer.Length - 1
TempMem =TempMem+buffer(i).ToString
Next
Else
MsgBox.Show("false")
End If
end sub