C#做外挂常用API
using System; using System.Collections.Generic; using System.Text; using System.Runtime.InteropServices; //这个肯定要的 namespace WindowsApplication1 {class win32API{public const int OPEN_PROCESS_ALL = 2035711;public const int PAGE_READWRITE = 4;public const int PROCESS_CREATE_THREAD = 2;public const int PROCESS_HEAP_ENTRY_BUSY = 4;public const int PROCESS_VM_OPERATION = 8;public const int PROCESS_VM_READ = 256;public const int PROCESS_VM_WRITE = 32;private const int PAGE_EXECUTE_READWRITE = 0x4;private const int MEM_COMMIT = 4096;private const int MEM_RELEASE = 0x8000;private const int MEM_DECOMMIT = 0x4000;private const int PROCESS_ALL_ACCESS = 0x1F0FFF;//查找窗体[DllImport("User32.dll", EntryPoint = "FindWindow")]public extern static IntPtr FindWindow(string lpClassName,string lpWindowName);//得到目标进程句柄的函数[DllImport("USER32.DLL")]public extern static int GetWindowThreadProcessId(int hwnd,ref int lpdwProcessId);[DllImport("USER32.DLL")]public extern static int GetWindowThreadProcessId(IntPtr hwnd,ref int lpdwProcessId);//打开进程[DllImport("kernel32.dll")]public extern static int OpenProcess(int dwDesiredAccess,int bInheritHandle,int dwProcessId);[DllImport("kernel32.dll")]public extern static IntPtr OpenProcess(uint dwDesiredAccess,int bInheritHandle,uint dwProcessId);//关闭句柄的函数[DllImport("kernel32.dll", EntryPoint = "CloseHandle")]public static extern int CloseHandle(int hObject);//读内存[DllImport("Kernel32.dll ")]public static extern Int32 ReadProcessMemory(IntPtr hProcess,IntPtr lpBaseAddress,[In, Out] byte[] buffer,int size,out IntPtr lpNumberOfBytesWritten);[DllImport("Kernel32.dll ")]public static extern Int32 ReadProcessMemory(int hProcess,int lpBaseAddress,ref int buffer,//byte[] buffer,int size,int lpNumberOfBytesWritten);[DllImport("Kernel32.dll ")]public static extern Int32 ReadProcessMemory(int hProcess,int lpBaseAddress,byte[] buffer,int size,int lpNumberOfBytesWritten);//写内存[DllImport("kernel32.dll")]public static extern Int32 WriteProcessMemory(IntPtr hProcess,IntPtr lpBaseAddress,[In, Out] byte[] buffer,int size,out IntPtr lpNumberOfBytesWritten);[DllImport("kernel32.dll")]public static extern Int32 WriteProcessMemory(int hProcess,int lpBaseAddress,byte[] buffer,int size,int lpNumberOfBytesWritten);//创建线程[DllImport("kernel32", EntryPoint = "CreateRemoteThread")]public static extern int CreateRemoteThread(int hProcess,int lpThreadAttributes,int dwStackSize,int lpStartAddress,int lpParameter,int dwCreationFlags,ref int lpThreadId);//开辟指定进程的内存空间[DllImport("Kernel32.dll")]public static extern System.Int32 VirtualAllocEx(System.IntPtr hProcess,System.Int32 lpAddress,System.Int32 dwSize,System.Int16 flAllocationType,System.Int16 flProtect);[DllImport("Kernel32.dll")]public static extern System.Int32 VirtualAllocEx(int hProcess,int lpAddress,int dwSize,int flAllocationType,int flProtect);//释放内存空间[DllImport("Kernel32.dll")]public static extern System.Int32 VirtualFreeEx(int hProcess,int lpAddress,int dwSize,int flAllocationType);} }
转载于:https://www.cnblogs.com/icyJ/archive/2013/05/11/3072397.html
C#做外挂常用API相关推荐
- 从0到1API测试怎么做?常用API测试工具简介
API 测试的基本步骤 主要包括三大步骤: (1)准备测试数据(这是可选步骤,不一定所有 API 测试都需要这一步) (2)通过 API 测试工具,发起对被测 API 的 request (3) 验证 ...
- C# 制作外挂常用的API
C#做外挂的常用API,本人用了很久,基本没发现问题 using System; using System.Collections.Generic; using System.Text; using ...
- c#做外挂 step by step(更新至step3:注入)
做外挂我也是现学的.可以说写的这个教程是现学现卖,希望对用C#的外挂爱好者能有点帮助. 本教程中有一些以" 废话 "字样标注的内容,赶时间的可以直接越过. 第一课:C#使用WIND ...
- React16常用api解析以及原理剖析
React16常用api解析以及原理剖析 目录 Vue 与 React 两个框架的粗略区别对比 react 16 版本常见 api react 生命周期 react 事件机制 react.Compon ...
- 常用API(Object、String、StringBuffer、用户登陆注册)
常用API 今日内容介绍 u Object u String u StringBuilder 第1章 Java的API及Object类 在以前的学习过程中,我们都在学习对象基本特征.对象的使用以及对象 ...
- Selenium Web 自动化 - Selenium常用API
Selenium Web 自动化 - Selenium常用API 2016-08-01 目录 1 对浏览器操作 1.1 用webdriver打开一个浏览器 1.2 最大化浏览器&关闭浏 ...
- python的爬虫库_python做爬虫常用库
python做爬虫常用库 一.总结 一句话总结: urllib:一系列用于操作URL的功能. requests:基于 urllib 编写的,阻塞式 HTTP 请求库,发出一个请求,一直等待服务器响应后 ...
- Object类、常用API
# [Object类.常用API] ## 主要内容 * Object类 * Date类 * DateFormat类 * Calendar类 * System类 * StringBuilder类 * 包 ...
- Java --- 常用API
常用API 方法重载: 方法名相同,方法接收的参数不同 static: 修饰的类,可以直接使用类名进行调用 方法名 说明 public static abs(int a) 返回参数的绝对值 publi ...
最新文章
- MFC控件的绘制与响应顺序——ZOrder
- python day1
- 与指定数字相同的数的个数(信息学奥赛一本通-T1102)
- NetApp集群模式Data ONTAP展露新颜
- java闰年满五换行_CoreJava练习题
- Win10 下Visual Studio 2017源码编译Paddle
- Android 中文API (69) —— BluetoothAdapter[蓝牙]
- python中聚类和分类的区别_聚类与分类有什么区别?
- B站三季度财报解读丨从0到2.67亿月活,B站生态亮眼的密钥何在?
- RISC-V嵌入式开发入门篇2:RISC-V汇编语言程序设计(上)
- C++ deque类使用详解
- 【PHP基础学习】—PHP异步非阻塞的实现方法
- TabTimes专访《无尽之剑 II》开发者Donald Mustard
- windows上安装detectron2
- 一篇文章,中文发完英文发,算“一稿多投”吗?
- vue-element-admin入坑之切换中文版
- 动态规划之DP中判断是否到达某一状态(最短时间是什么)?
- 如何改进企业旧式工时管理系统?
- JAVA学习(四):Java流程控制语句(顺序结构、if条件语句、switch条件语句、循环语句与跳转语句)
- 人生苦短我用python壁纸_人生苦短,我用python