WriteProcessMemory函数说明

WriteProcessMemory函数说明WriteProcessMemory目录概览C++VB编辑本段概览WriteProcessMemory此函数能写入某一进程的内存区域。入口区必须可以访问,否则操作将失败。编辑本段C++此函数能写入

大家好,又见面了,我是你们的朋友全栈君。

WriteProcessMemory

 

目录

概览
C++
VB
 

编辑本段概览

  
WriteProcessMemory

WriteProcessMemory

  此
函数能写入某一进程的内存区域。入口区必须可以访问,否则操作将失败。

 

编辑本段C++

  此函数能写入某一进程的内存区域(直接写入会出Access Violation错误,故需此函数)。

 

  VC++声明

 

  BOOL WriteProcessMemory(

 

  HANDLE hProcess,

 

  LPVOID lpBaseAddress,

 

  LPVOID lpBuffer,

 

  DWORD nSize,

 

  LPDWORD lpNumberOfBytesWritten

 

  );

 

  参数:

 

  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位

 

  基本数据类型的长度参见基本数据类型

 
 
 
扩展阅读:
  • 1

    MSDN

开放分类:
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/155593.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • python标识符以什么开头_哪个不是python合法标识符

    python标识符以什么开头_哪个不是python合法标识符python标识符命名规范介绍发布时间:2020-05-2311:03:48来源:亿速云阅读:146作者:Leahpython的标识符是什么?怎样命名?这些问题可能是我们日常工作会见到的。通过这些问题,希望你能收获更多。下面是揭开这些问题的详细内容。简单地理解,标识符就是一个名字,就好像我们每个人都有属于自己的名字,它的主要作用就是作为变量、函数、类、模块以及其他对象的名称。Python中标识…

  • url转二维码[通俗易懂]

    url转二维码[通俗易懂]前端简单实现页面路径转化为二维码

  • qlineedit_qt layoutstretch

    qlineedit_qt layoutstretch简述QLineEdit是一个单行文本输入框。QLineEdit允许用户输入和编辑单行纯文本,提供了很多有用的编辑功能,包括:撤消和重做、剪切和粘贴、以及拖放(见setDragEnabled())。通过改变输入框的echoMode(),同时也可以设置为一个“只写”字段,用于输入密码等。文本的长度可以被限制为maxLength(),可以使用一个validator()或inputMask()来任意限制文本

  • 服务器四通道内存性能提升,四通道内存性能怎么样

    服务器四通道内存性能提升,四通道内存性能怎么样四通道的内存有提升,但是性价比不是很好,如果是发烧友那不需要考虑什么了,如果是实用主义者四通道带来的性能的提升可能不会在使用中有太多的明显的感受。组建四通道内存很简单,有足够的内存条卡槽,X79的芯片组,i7-3960K的处理器,Apacer宇瞻猎豹DDR3-16002GB*4或者海盗船DDR316002GB*4的内存条就可以了,当然其他品牌的内存条也可以,这里只是举例,四条一样…

  • POJ – 2965 – The Pilots Brothers' refrigerator (高效贪心!!)[通俗易懂]

    POJ – 2965 – The Pilots Brothers' refrigerator (高效贪心!!)

  • springboot+redis哨兵集群的yml配置 Cannot retrieve initial cluster partitions from initial URIs[通俗易懂]

    springboot+redis哨兵集群的yml配置 Cannot retrieve initial cluster partitions from initial URIs[通俗易懂]redis:单机模式时添加host:192.168.0.8port:6379timeout:5000lettuce:pool:#连接池中的最大空闲连接max-idle:8#连接池中的最小空闲连接min-idle:1#连接池最大阻塞等待时间(使用负值表示没有限制)max-wait:-1#连接池最大连接数(使用负值表示没有限制)max-active:50cluster:max-redirects:10nodes:192.168.0.8:63

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号