網(wǎng)上好多關(guān)于ReadprocessMemory、WriteprocessMemory使用方法的貼子都不能用,下面是本人親自測(cè)過可用的,望對(duì)大家有用。
創(chuàng)新互聯(lián)專注于高唐網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗(yàn)。 熱誠為您提供高唐營(yíng)銷型網(wǎng)站建設(shè),高唐網(wǎng)站制作、高唐網(wǎng)頁設(shè)計(jì)、高唐網(wǎng)站官網(wǎng)定制、小程序設(shè)計(jì)服務(wù),打造高唐網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供高唐網(wǎng)站排名全網(wǎng)營(yíng)銷落地服務(wù)。 ''' <summary>
''' 讀取內(nèi)存地址
''' </summary>
''' <param name="hProcess">進(jìn)程句柄</param>
''' <param name="lpBaseAddress">內(nèi)存地址</param>
''' <param name="lpBuffer">數(shù)據(jù)存儲(chǔ)變量</param>
''' <param name="nSize">長(zhǎng)度sizeof(lpBuffer)</param>
''' <param name="lpNumberOfBytesRead">讀取長(zhǎng)度</param>
''' <returns></returns>
''' <remarks></remarks>
Declare Function ReadProcessMemory Lib "kernel32.dll" (ByVal hProcess As Integer, ByVal lpBaseAddress As IntPtr, ByVal lpBuffer As IntPtr, ByVal nSize As Integer, ByRef lpNumberOfBytesRead As Integer) As Boolean
''' <summary>
''' 寫入內(nèi)存地址
''' </summary>
''' <param name="hProcess">進(jìn)程句柄</param>
''' <param name="lpBaseAddress">寫入進(jìn)程的內(nèi)存地址</param>
''' <param name="lpBuffer">數(shù)據(jù)存儲(chǔ)變量</param>
''' <param name="nSize">長(zhǎng)度sizeof(lpBuffer)</param>
''' <param name="lpNumberOfBytesWritten">實(shí)際數(shù)據(jù)的長(zhǎng)度</param>
''' <returns></returns>
''' <remarks></remarks>
Declare Function WriteProcessMemory Lib "kernel32" Alias "WriteProcessMemory" _
(ByVal hProcess As Integer, ByVal lpBaseAddress As IntPtr, _
ByVal lpBuffer As Byte(), ByVal nSize As Integer, ByVal lpNumberOfBytesWritten As IntPtr) As Boolean
Declare Function OpenProcess Lib "kernel32.dll" (ByVal dwDesiredAccess As Integer, ByVal bInheritHandle As Integer, ByVal dwProcessId As Integer) As Integer
Friend Const PROCESS_ALL_ACCESS = &H1F0FFF = 2035711
Friend Const PROCESS_VM_READ = &H10
Friend Const PROCESS_VM_WRITE = &H20
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim hw As Integer = OpenProcess(PROCESS_VM_READ, False, 4304)
Dim getstr(12) As Byte
Dim GetStrIntptr = Marshal.UnsafeAddrOfPinnedArrayElement(getstr, 0)
Button1.Text = "read結(jié)果:" & ReadProcessMemory(hw, CType(&H4D45A0, IntPtr), GetStrIntptr, 12, 0)
TextBox1.Text = Marshal.PtrToStringUni(GetStrIntptr)
TextBox3.Text = "GLE:" & GetLastError
CloseHandle(hw)
End Sub
‘需要注意:readprocessmemory的lpBuffer放的地?cái)?shù)組地址的基址,需要用marshal轉(zhuǎn)化一下。Marshal.PtrToStringUni(GetStrIntptr)輸出內(nèi)容。
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Dim hw As Integer = OpenProcess(&H1F0FFF, False, 4304)
Dim Wrtstr(12) As Byte
Wrtstr = System.Text.Encoding.Unicode.GetBytes("vbWrit")
Button2.Text = "Write結(jié)果:" & WriteProcessMemory(hw, CType(&H4D45A0, IntPtr), Wrtstr, 12, 0)
TextBox3.Text = "GLE:" & GetLastError
CloseHandle(hw)
End Sub
創(chuàng)新互聯(lián)www.cdcxhl.cn,專業(yè)提供香港、美國(guó)云服務(wù)器,動(dòng)態(tài)BGP最優(yōu)骨干路由自動(dòng)選擇,持續(xù)穩(wěn)定高效的網(wǎng)絡(luò)助力業(yè)務(wù)部署。公司持有工信部辦法的idc、isp許可證, 機(jī)房獨(dú)有T級(jí)流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確進(jìn)行流量調(diào)度,確保服務(wù)器高可用性。佳節(jié)活動(dòng)現(xiàn)已開啟,新人活動(dòng)云服務(wù)器買多久送多久。
當(dāng)前文章:vb.netReadProcessMemory使用方法-創(chuàng)新互聯(lián)
文章地址:http://www.rwnh.cn/article42/dsddhc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供電子商務(wù)、品牌網(wǎng)站建設(shè)、網(wǎng)站策劃、微信公眾號(hào)、云服務(wù)器、企業(yè)建站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容