|
WriteFile,
参数:
.版本 2
.参数 hFile, 整数型, , 一个文件的句柄
.参数 lpBuffer, 字节集, 参考, 要写入的一个数据缓冲区
.参数 nNumberOfBytesToWrite, 整数型, , 要写入数据的字节数量。如写入零字节,表示什么都不写入,但会更新文件的“上一次修改时间”。针对位于远程系统的命名管道,限制在65535个字节以内
.参数 lpNumberOfBytesWritten, 整数型, 参考, 实际写入文件的字节数量
.参数 lpOverlapped, 整数型, , OVERLAPPED,倘若在指定FILE_FLAG_OVERLAPPED的前提下打开文件,这个参数就必须引用一个特殊的结构。那个结构定义了一次异步写操作。否则,该参数应置为空(将声明变为ByVal As 并传递零值);
那么问题来了,当我以dll形式注入其他程序,然后hook这个api,则需要把lpBuffer的类型设置为整数型(易语言动态链接库只支持基本类型参数),hook返回的值是一个负数(比如:-21343545),那用这个值如何取到本来的数据内容(字节集的),这个貌似不是变量指针,貌似是数据缓冲区地址,但怎么得到数据缓冲区的数据呢???求教!
补充内容 (2014-12-6 22:08):
hook返回的值是说lpBuffer参数 |
|