C# 制作外挂常用的API
- 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
- );
- }
- }
C# 制作外挂常用的API相关推荐
- 易语言常用WINdows API分类查询
WINdows API分类 1.API之网络函数 2.API之消息函数 3.API之文件处理函数 4.API之打印函数 5.API之文本和字体函数 6.API之菜单函数 7.API之位图.图标和光栅运 ...
- Unity编译器拓展学习总结(一):常用工具API
Unity编译器拓展学习总结(一):常用工具API 文章目录 Unity编译器拓展学习总结(一):常用工具API 前言 一.常用工具API 1.PrefabUtility 2.AssetDatabas ...
- Elasticsearch入常用RESTful API总结
RESTful API HTTP动词介绍 对于资源的具体操作类型,由HTTP动词表示. 常用的HTTP动词有下面五个(括号里是对应的SQL命令). GET(SELECT):从服务器取出资源(一项或多项 ...
- java 常用的api_Java中常用的API(一)——Object
概述 如果要问Java为什么是用起来非常舒服的语言,那很大一部分的功劳就是JavaAPI的.API定义了许多封装好的类和方法供我们使用,来处理特定的问题,所以学习常用的API是非常重要的. 同时,面向 ...
- java+@api_Java 常用的api
## 常用的api ## #### 1.概述 #### > API(Application ProgrammingInterface,应用程序编程接口)是一些预先定义的函数,目的是提供应用程序与 ...
- HDFS常用的Api
HDFS常用的Api: package com.jxd.hdfs;import org.apache.hadoop.conf.Configuration; import org.apache.hado ...
- C#和C常用的API操作窗口的代码积累
C#和C常用的API操作窗口的代码积累 IntPtr awin = MouseHookHelper.FindWindow("WeChatMainWndForPC", "微 ...
- java手机网站开发工具_制作网站常用的网页开发工具有哪些
我们要想制作好网站其实是离不开网站代码的HTML,我们在制作网站的时候是需要用到一些常用的网页开发工具,才能完成我们网页的编写,那么,你知道制作网站常用的网页开发工具有哪些吗?不清楚的话,下面小编和你 ...
- Android开发:4-3、Activity常用其他API接口、屏幕旋转
Activity常用其他API接口 API 屏幕方向改变的一般实现方法: API 1.onSaveInstanceState方法:在onPause之前调用,调用情形 1.在Activity被覆盖或者退 ...
最新文章
- Debug 和 Release 编译方式
- Linux_文件系统、磁盘分区_RHEL7
- open_basedir php.ini,关于PHP文件包含目录配置 open_basedir
- GCC对C++标准的实现情况
- 利用curl验证ssl网站(webservice)
- win10安装ensp启动40_装系统不求人,快速制作启动U盘,傻瓜式重装WIN10
- Android4.0的Alertdialog对话框,设置点击其他位置不消失
- 牛客网---Java题库(21~30)
- 专家解惑 | 关于华为云盘古大模型,你想问的都在这里~
- 也谈WEB打印(四):让我们的模板支持打印,并根据内容动态的生成页面
- beego mysql按时间排序_beego的数据库操作优化
- 【实践】LightSeq:高性能NLP序列推理实践-字节跳动.pdf(附下载链接)
- 谷歌新玩具Vision Kit,带你DIY一个能识别千种物体的AI摄像头
- JVM GC调优参数说明
- Android 4.1初识--7月13号
- [转载]AxureRP学习成长之路
- 游戏必备组件有哪些_微信抖音小游戏黄金矿工案例详解
- 如何判断DNS解析故障?如何解决DNS解析错误?
- 我的世界自动生成服务器主城指令,我的世界生成主城的指令
- Lighthouse performance scoring
热门文章
- android 定位服务 耗电吗,关于Android的定位服务
- htmlcss网页设计代码案例_网页设计案例|定价表版块设计方案鉴赏
- python3模块socket怎么安装_Python中socket模块的使用方法(一)
- android o wifi 感知,Android上的Wifi感知与Wifi P2P之间有何区别?
- 如何查linux系统安装时间查询,Linux系统怎样查询当前的系统时间
- Netty详解(五):Netty TCP粘包 拆包
- java定义时间格式大全_Java时间格式转换大全
- 数据结构之单链表(golang版)
- tensorflow从入门到放弃-0
- Hibernate 入门小案例