zoukankan
html css js c++ java
C#引入Win32API:常用Win32API
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 ); } }
查看全文
相关阅读:
git clone --early EOF
weex 小结 -- <list>
weex 小结 --官方扩展组件
weex 小结--内建模块
viewPager 的可滑动 Title
viewPager + fragment
onInterceptTouchEvent / onTouchEvent响应事件的详析
startActivity跳转失败而且没有异常信息
ios2048
插入排序
原文地址:https://www.cnblogs.com/bdstjk/p/2519866.html
最新文章
html5 FileReader
性能优化
git
angularJS
ie6的兼容问题总结
Websocket、Ajax轮询和长连接(long pull)
js数组,对象,类数组
js的proto和prototype区别
IE 6.7 bug
12.25笔记 浏览器
热门文章
12.24笔记 复习
笔记
12.21笔记 拖拽
12.20笔记 正则
12.19笔记 正则
12.18笔记 正则的理解
12.17笔记 正则
12.17笔记 闭包
mqtt rocketMq
clone 工程
Copyright © 2011-2022 走看看