递归火山软件开发平台
标题:
以下这个api如何嵌入式封装
[打印本页]
作者:
zzh233
时间:
2022-1-26 12:17
标题:
以下这个api如何嵌入式封装
LPVOID VirtualAllocEx( [in] HANDLE hProcess, [in, optional] LPVOID lpAddress, [in] SIZE_T dwSize, [in] DWORD flAllocationType, [in] DWORD flProtect);
我想学习 嵌入式 比如 类似
@ ::WriteProcessMemory((HANDLE)@<进程句柄>,(LPCVOID)@<内存基址>,(LPVOID)@<缓冲区指针>,(SIZE_T)@<缓冲区指针大小>,(SIZE_T *)&@<实际读取字节数>)
上面的能不能帮我写个范例 改成 嵌入式的
另外这个嵌入式的最后一个
(SIZE_T *)& 这个 &是啥意思
@福寿
作者:
Xelloss0618
时间:
2022-1-26 15:34
跟你那个
WriteProcessMemory 的例子没多少区别的
&是取变量指针的操作符,这个建议你看一下 C++ 的基础语法
(, 下载次数: 53)
上传
点击文件名下载附件
作者:
zzh233
时间:
2022-1-27 01:34
Xelloss0618 发表于 2022-1-26 15:34
跟你那个 WriteProcessMemory 的例子没多少区别的
&是取变量指针的操作符,这个建议你看一下 C++ 的基础语 ...
万分感谢您的回复 我想问一下 我那个例子 前面两个:: 这个直接一个@ 是不是有返回的和没返回的区别
作者:
Xelloss0618
时间:
2022-1-27 10:53
:: 是作用域,这里表示全局函数,如果类里面有跟 API 同名的方法,不加就会使用类里面的方法,加了是用 API。大部分 Win32 API 都没有同名的函数,一般可以不加 ::。
这里火山方法的属性加了「嵌入式方法」,语句后面的分号不要填,有没返回值只需要设置返回值类型,不需要也不能写 return,这个 API 返回的是 LPVOID,火山里没有这个类型,所以前面加 (INT_P) 强制类型转换成变整数。
属性「嵌入式方法」适合单条语句的,效率更高,如果多条嵌入式语句的,就不能用了,需要语句后面正常加分号和写 return
欢迎光临 递归火山软件开发平台 (https://bbs.voldp.com/)
Powered by Discuz! X3.4