概覽
C++
此函式能寫入某一進程的記憶體區域(直接寫入會出Access Violation錯誤,故需此函式)。
VC++聲明
參數:
hProcess
由OpenProcess返回的進程句柄。
如參數傳數據為 INVALID_HANDLE_VALUE 【即-1】目標進程為自身進程
lpBaseAddress
要寫的記憶體首地址
在寫入之前,此函式將先檢查目標地址是否可用,並能容納待寫入的數據。
lpBuffer
指向要寫的數據的指針。
nSize
要寫入的位元組數。
返回值
非零值代表成功。
可用GetLastError獲取更多的錯誤詳細信息。
要求
作業系統版本: Windows CE 2.0及以上版本。
所在頭檔案: Winbase.h
程式庫: Nk.lib
參見
OpenProcess| ReadProcessMemory
VB
Declare Function WriteProcessMemory Lib "kernel32" (ByVal hProcess As Long, ByVal lpBaseAddress As Any, ByVal lpBuffer As Any, ByVal nSize As Long, lpNumberOfBytesWritten As Long) As Long
說明:
hProcess , 進程的句柄
lpBaseAddress, 寫入進程的位置
lpBuffer, 數據當前存放地址
nSize, 數據的長度
lpNumberOfBytesWritten,實際數據的長度
nSize以位元組為單位,一個位元組Byte等於8位
基本數據類型的長度參見基本數據類型