WriteProcessMemory

機能
指定プロセスのメモリ領域にデータをコピー
Declare Function WriteProcessMemory Lib "kernel32.dll" _
(ByVal hProcess As Long, ByVal lpBaseAddress As Long, _
lpBuffer As Any, ByVal nSize As Long, _
ByVal lpNumberOfBytesWritten As Long) As Long
Declare Function WriteProcessMemory Lib "kernel32.dll" _
(ByVal hProcess As Integer, ByVal lpBaseAddress As Integer, _
lpBuffer As Integer, ByVal nSize As Integer, _
ByVal lpNumberOfBytesWritten As Integer) As Integer

BOOL WriteProcessMemory(
HANDLE hProcess,
LPVOID lpBaseAddress,
LPVOID lpBuffer,
DWORD nSize,
LPDWORD lpNumberOfBytesWritten
);
引数
hProcess

コピー先のプロセスのハンドル
lpBaseAddress
コピー先のベースアドレス
lpBuffer
データを格納するバッファ
nSize
同、サイズ
lpNumberOfBytesWritten
実際にコピーしたバイト数
戻り値
正常終了のとき  0以外
エラーのとき    0
備考
システムは、コピーに先立ってlpBaseAddressで指定されたアドレスのデータと
指定のサイズのメモリ領域にアクセス可能かどうかをチェックする。
問題があればエラーになる。