亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

VB讀取線程、句柄及寫入內(nèi)存的API代碼實(shí)例

 更新時(shí)間:2014年07月31日 10:47:12   投稿:shichen2014  
這篇文章主要介紹了VB讀取線程、句柄及寫入內(nèi)存的API代碼實(shí)例,需要的朋友可以參考下

本文所述實(shí)例為VB讀取內(nèi)存、線程及句柄的一個(gè)API,對(duì)涉及系統(tǒng)底層操作的VB編程有一定的幫助,需要的讀者可以參考使用。這個(gè)API可獲取到線程ID,寫內(nèi)存,包括進(jìn)程句柄,ByVal 內(nèi)存區(qū)地址,數(shù)據(jù),總長(zhǎng)度,已經(jīng)完成長(zhǎng)度,讀取進(jìn)程,包括進(jìn)程句柄,ByVal 內(nèi)存區(qū)地址,讀取來(lái)的數(shù)據(jù)存放處,要讀取的長(zhǎng)度,已經(jīng)讀取的長(zhǎng)度,內(nèi)存分配(進(jìn)程柄,地址[好像只要丟個(gè)0進(jìn)去就行],長(zhǎng)度,權(quán)限1[MEM_COMMIT],權(quán)限2[PAGE_READWRITE])返回:分配到的內(nèi)存起始地址等功能。

具體實(shí)現(xiàn)代碼如下:

Attribute VB_Name = "API"
Option Explicit
Public Declare Function GetDesktopWindow Lib "User32.DLL" () As Long
Public Declare Function FindWindow Lib "User32.DLL" Alias "FindWindowA" (ByVal ClassName As String, ByVal Caption As String) As Long
Public Declare Function GetWindow Lib "User32.DLL" (ByVal hwnd As Long, ByVal wCmd As Long) As Long
Public Declare Function GetWindowText Lib "User32.DLL" Alias "GetWindowTextA" (ByVal hwnd As Long, ByVal lpString As String, ByVal cch As Long) As Long
Public Const GW_CHILD = (5)
Public Const GW_HWNDNEXT = (2)

Public Declare Function GetWindowThreadProcessId Lib "User32.DLL" (ByVal hwnd As Long, ProcessId As Long) As Long
'取找線程ID(句柄,返回的線程ID)

Public Declare Function OpenProcess Lib "Kernel32.DLL" (ByVal 操作權(quán)限 As Long, ByVal 繼承句柄 As Long, ByVal 線程ID As Long) As Long
Public Declare Function ReadProcessMemory Lib "Kernel32.DLL" (ByVal 進(jìn)程柄 As Long, ByVal 內(nèi)存位置 As Long, 緩沖區(qū) As Any, ByVal 長(zhǎng)度 As Long, lpNumberOfBytesWritten As Long) As Long
'讀取進(jìn)程(進(jìn)程句柄,ByVal 內(nèi)存區(qū)地址,讀取來(lái)的數(shù)據(jù)存放處,要讀取的長(zhǎng)度,已經(jīng)讀取的長(zhǎng)度[0])
Public Declare Function WriteProcessMemory Lib "Kernel32.DLL" (ByVal 進(jìn)程柄 As Long, 內(nèi)存位置 As Any, 緩沖區(qū) As Any, ByVal 長(zhǎng)度 As Long, lpNumberOfBytesWritten As Long) As Long
'寫內(nèi)存(進(jìn)程句柄,ByVal 內(nèi)存區(qū)地址,數(shù)據(jù),總長(zhǎng)度,已經(jīng)完成長(zhǎng)度[0])
Public Declare Function CloseHandle Lib "Kernel32.DLL" (ByVal 進(jìn)程柄 As Long) As Long
'釋放(進(jìn)程句柄)'不釋放會(huì)出錯(cuò)

Public Const STANDARD_RIGHTS_REQUIRED = &HF0000
Public Const SYNCHRONIZE = &H100000
Public Const RRAD_WRITE = &H1F0FFF
Public Const PROCESS_VM_OPERATION = &H8&
Public Const 讀取 = &H10&
Public Const 寫入 = &H20&

'---------變量轉(zhuǎn)換API
Public Declare Sub MOV Lib "Kernel32.DLL" Alias "RtlMoveMemory" (變量1 As Any, 變量2 As Any, ByVal 長(zhǎng)度 As Long)

'---------內(nèi)存保護(hù)分配釋放
Public Declare Function VPE Lib "Kernel32.DLL" Alias "VirtualProtectEx" (ByVal 進(jìn)程柄 As Long, 地址 As Any, ByVal 長(zhǎng)度 As Long, ByVal flNewProtect As Long, lpflOldProtect As Long) As Long
Public Declare Function VAE Lib "Kernel32.DLL" Alias "VirtualAllocEx" (ByVal 進(jìn)程柄 As Long, ByVal 地址 As Long, ByVal 長(zhǎng)度 As Long, ByVal flAllocationType As Long, ByVal flProtect As Long) As Long
'內(nèi)存分配(進(jìn)程柄,地址[好像只要丟個(gè)0進(jìn)去就行],長(zhǎng)度,權(quán)限1[MEM_COMMIT],權(quán)限2[PAGE_READWRITE])返回:分配到的內(nèi)存起始地址
Public Declare Function VFE Lib "Kernel32.DLL" Alias "VirtualFreeEx" (ByVal 進(jìn)程柄 As Long, ByVal 地址 As Long, ByVal 長(zhǎng)度 As Long, ByVal 釋放類型 As Long) As Long

Public Const MEM_COMMIT = &H1000
Public Const PAGE_READWRITE = &H4
Public Const STILL_ACTIVE = &H103&
Public Const INFINITE = &HFFFF

'---------取模塊函數(shù)位置API
Public Declare Function GetModuleHandle Lib "Kernel32.DLL" Alias "GetModuleHandleA" (ByVal ModuleName As String) As Long
Public Declare Function LoadLibrary Lib "Kernel32.DLL" Alias "LoadLibraryA" (ByVal ModuleName As String) As Long
Public Declare Function GetProcAddress Lib "Kernel32.DLL" (ByVal hModule As Long, ByVal ProcName As String) As Long

Public Declare Function CreateRemoteThread Lib "Kernel32.DLL" (ByVal 進(jìn)程柄 As Long, lpThreadAttributes As Any, ByVal dwStackSize As Long, ByVal lpStartAddress As Long, lpParameter As Any, ByVal dwCreationFlags As Long, lpThreadID As Long) As Long
Public Declare Function GetTickCount Lib "kernel32" () As Long

相關(guān)文章

  • VB獲取文件大小的方法

    VB獲取文件大小的方法

    這篇文章主要介紹了VB獲取文件大小的方法,可實(shí)現(xiàn)準(zhǔn)確獲取文件大小的功能,需要的朋友可以參考下
    2015-06-06
  • 關(guān)于MSCOMM控件的一些說(shuō)明

    關(guān)于MSCOMM控件的一些說(shuō)明

    關(guān)于MSCOMM控件的一些說(shuō)明...
    2007-03-03
  • VB鍵盤鼠標(biāo)無(wú)動(dòng)作調(diào)用程序的嘗試

    VB鍵盤鼠標(biāo)無(wú)動(dòng)作調(diào)用程序的嘗試

    這篇文章主要介紹了VB鍵盤鼠標(biāo)無(wú)動(dòng)作調(diào)用程序的嘗試,記錄下整個(gè)思路和過(guò)程,有需要的小伙伴可以參考下。
    2015-06-06
  • VBA中操作Excel常用方法總結(jié)

    VBA中操作Excel常用方法總結(jié)

    這篇文章主要介紹了VBA中操作Excel常用方法總結(jié),包含關(guān)閉工作簿、打開(kāi)工作簿、切換工作表等,需要的朋友可以參考下
    2014-07-07
  • VB實(shí)現(xiàn)按行讀取文本文件的方法

    VB實(shí)現(xiàn)按行讀取文本文件的方法

    這篇文章主要介紹了VB實(shí)現(xiàn)按行讀取文本文件的方法,涉及使用VB操作文件讀取的相關(guān)技巧,需要的朋友可以參考下
    2015-06-06
  • Basic求10000以內(nèi)的完美數(shù)

    Basic求10000以內(nèi)的完美數(shù)

    一個(gè)數(shù)的所有真因數(shù)加起來(lái)正好等于這個(gè)自然數(shù)本身,在數(shù)學(xué)上,具有這種性質(zhì)的自然數(shù)叫做完全數(shù)。關(guān)鍵是求出該自然數(shù)k的所有因子。如果k%i為0,則i為k的因子,用循環(huán)語(yǔ)句求出k 的所有真因子(1<=i<=k/2),把它們求和,看是否等于k來(lái)判斷。
    2015-05-05
  • VB編程基礎(chǔ)課教程

    VB編程基礎(chǔ)課教程

    VB編程基礎(chǔ)課教程...
    2007-03-03
  • VBA數(shù)組用法案例詳解

    VBA數(shù)組用法案例詳解

    這篇文章主要介紹了VBA數(shù)組用法案例詳解,本篇文章通過(guò)簡(jiǎn)要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下
    2021-08-08
  • VB簡(jiǎn)單實(shí)現(xiàn)防止文件被改寫

    VB簡(jiǎn)單實(shí)現(xiàn)防止文件被改寫

    這篇文章主要介紹了VB簡(jiǎn)單實(shí)現(xiàn)防止文件被改寫的方法,十分的簡(jiǎn)單實(shí)用,有需要的小伙伴可以參考下。
    2015-06-06
  • VB實(shí)現(xiàn)的《QQ美女找茬游戲》作弊器實(shí)例

    VB實(shí)現(xiàn)的《QQ美女找茬游戲》作弊器實(shí)例

    這篇文章主要介紹了VB實(shí)現(xiàn)的《QQ美女找茬游戲》作弊器,以一個(gè)完整實(shí)例形式分析了VB實(shí)現(xiàn)《QQ美女找茬游戲》作弊器的相關(guān)技巧,需要的朋友可以參考下
    2015-06-06

最新評(píng)論