从今天开始在“Plug-in elf.”栏目写内容了,故名思义是“外挂小
精灵”本栏目内只提供关于外挂开发的技术文献、当然本人不建
议你为公司开发外挂,因为复杂外挂开发并不是单独一个人可
以做下来的,即便一个团队也可能无法研发出真正意义上的外
挂、如同封包(WPE)外挂,目前网页游戏在这里一块主要通过
时间加密,而且每秒上百个封包,且会利用类似“时间加密”这一
块的技术,每个游戏加密方式各不相同,单单分析加密算法也足
够你头疼、如果是通过游戏CALL、如封包CALL,打怪CALL等
受到游戏驱动保护,如反调试,调试陷阱、单单过保护也足够令
人头疼、所以本栏目外挂开发文献只使用对计算机编程极端分子、
本栏目外挂或许只会涉及到少量的汇编与内存,封包外挂等、
通过驱动过游戏保护方面,或许以后会被提到 当然目前不会涉
及到这方面得资料、
1.如何安装服务?
“以管理身份运行”控制台(cmd),找到大漠插件的主函数动态链
接库(dm.dll)、通过“RegSvr32 dm.dll”注册到系统ROT映射表、
尽量避免“RegSvr32 dm.dll / i”注册,可以避免注册COM服务失
败、当然如果以后某日或许我会提到“静态映射COM服务”、此技
术需要重写COM创建底层构建一个对象,可以避免向系统ROT映
射表注册、不过现在是不会讨论这些问题、
不过需要注意如果你要调用大漠插件中提供的命令那么你的项目
运行的平台必须限制在x86,但是并不影响你操作x64平台的游戏
2.如何引用服务?
在C# / VB.NET / C++/CLR项目中 你可以右键项目“添加引用(R)”
打开上面的窗口,选择COM找到或搜索Dm当然根据不同版本的
Visual Studio版本操作方法都有所不同、需要你们自己注意、当
然本文并不建议通过由Visual Studio打包大漠插件的COM互操作
(Interop)、你可以参考我下面提供的COM调用接口互操作声明、
3.如何创建服务?
你必须在STAT(单线程)中创建COM对象服务、而不是在MTAT
(多线程)中创建、否则会引发错误、当然上图代码是你通过VS
引用自动打开的ComInterop,创建的方法、当然在上面我应该
已经提到尽量使用我下面提供的COM调用接口、
当然我在本文中会提供VB.NET与C#两种语言的ComInterop、可
以通过VB.NET写也可以C#写,但是通过根据不同的小精灵需求
决定使用什么开发语言、
4.如何卸载服务?
“以管理员身份运行”控制台(cmd),找到大漠插件动态链接库,然
后通过“regsvr32 dm.dll / u”从系统的ROT映射表中移除掉关于大
漠插件注册的相关信息、一般做外挂时在运行时注册,在结束时
卸载注册、当然如果通过“静态映射COM服务”则不需要、
5.大漠插件下载
在打包的大漠插件包中版本为3.1233、包含在开发时一些必要的
工具,包括“大漠接口开发文档”、一般用2.1142做开发足够用了、
不过3.1233也可以、版本不是越高越好、需要注意
大漠插件下载地址:http://pan.baidu.com/s/1dEplYq1
6.C# Idmsoft / COM调用接口互操作声明
namespace 飞车精灵
{
using System;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
[ComImport, Guid("F3F54BC2-D6D1-4A85-B943-16287ECEA64C")]
public interface Idmsoft
{
[DispId(1)]
[MethodImpl(MethodImplOptions.InternalCall)]
[return: MarshalAs(UnmanagedType.BStr)]
string Ver();
[DispId(2)]
[MethodImpl(MethodImplOptions.InternalCall)]
int SetPath([MarshalAs(UnmanagedType.BStr)] [In] string path);
[DispId(3)]
[MethodImpl(MethodImplOptions.InternalCall)]
[return: MarshalAs(UnmanagedType.BStr)]
string Ocr([In] int x1, [In] int y1, [In] int x2, [In] int y2, [MarshalAs(UnmanagedType.BStr)] [In] string color, [In] double sim);
[DispId(4)]
[MethodImpl(MethodImplOptions.InternalCall)]
int FindStr([In] int x1, [In] int y1, [In] int x2, [In] int y2, [MarshalAs(UnmanagedType.BStr)] [In] string str, [MarshalAs(UnmanagedType.BStr)] [In] string color, [In] double sim, [MarshalAs(UnmanagedType.Struct)] out object x, [MarshalAs(UnmanagedType.Struct)] out object y);
[DispId(5)]
[MethodImpl(MethodImplOptions.InternalCall)]
int GetResultCount([MarshalAs(UnmanagedType.BStr)] [In] string str);
[DispId(6)]
[MethodImpl(MethodImplOptions.InternalCall)]
int GetResultPos([MarshalAs(UnmanagedType.BStr)] [In] string str, [In] int index, [MarshalAs(UnmanagedType.Struct)] out object x, [MarshalAs(UnmanagedType.Struct)] out object y);
[DispId(7)]
[MethodImpl(MethodImplOptions.InternalCall)]
int StrStr([MarshalAs(UnmanagedType.BStr)] [In] string s, [MarshalAs(UnmanagedType.BStr)] [In] string str);
[DispId(8)]
[MethodImpl(MethodImplOptions.InternalCall)]
int SendCommand([MarshalAs(UnmanagedType.BStr)] [In] string cmd);
[DispId(9)]
[MethodImpl(MethodImplOptions.InternalCall)]
int UseDict([In] int index);
[DispId(10)]
[MethodImpl(MethodImplOptions.InternalCall)]
[return: MarshalAs(UnmanagedType.BStr)]
string GetBasePath();
[DispId(11)]
[MethodImpl(MethodImplOptions.InternalCall)]
int SetDictPwd([MarshalAs(UnmanagedType.BStr)] [In] string pwd);
[DispId(12)]
[MethodImpl(MethodImplOptions.InternalCall)]
[return: MarshalAs(UnmanagedType.BStr)]
string OcrInFile([In] int x1, [In] int y1, [In] int x2, [In] int y2, [MarshalAs(UnmanagedType.BStr)] [In] string pic_name, [MarshalAs(UnmanagedType.BStr)] [In] string color, [In] double sim);
[DispId(13)]
[MethodImpl(MethodImplOptions.InternalCall)]
int Capture([In] int x1, [In] int y1, [In] int x2, [In] int y2, [MarshalAs(UnmanagedType.BStr)] [In] string file);
[DispId(14)]
[MethodImpl(MethodImplOptions.InternalCall)]
int KeyPress([In] int vk);
[DispId(15)]
[MethodImpl(MethodImplOptions.InternalCall)]
int KeyDown([In] int vk);
[DispId(16)]
[MethodImpl(MethodImplOptions.InternalCall)]
int KeyUp([In] int vk);
[DispId(17)]
[MethodImpl(MethodImplOptions.InternalCall)]
int LeftClick();
[DispId(18)]
[MethodImpl(MethodImplOptions.InternalCall)]
int RightClick();
[DispId(19)]
[MethodImpl(MethodImplOptions.InternalCall)]
int MiddleClick();
[DispId(20)]
[MethodImpl(MethodImplOptions.InternalCall)]
int LeftDoubleClick();
[DispId(21)]
[MethodImpl(MethodImplOptions.InternalCall)]
int LeftDown();
[DispId(22)]
[MethodImpl(MethodImplOptions.InternalCall)]
int LeftUp();
[DispId(23)]
[MethodImpl(MethodImplOptions.InternalCall)]
int RightDown();
[DispId(24)]
[MethodImpl(MethodImplOptions.InternalCall)]
int RightUp();
[DispId(25)]
[MethodImpl(MethodImplOptions.InternalCall)]
int MoveTo([In] int x, [In] int y);
[DispId(26)]
[MethodImpl(MethodImplOptions.InternalCall)]
int MoveR([In] int rx, [In] int ry);
[DispId(27)]
[MethodImpl(MethodImplOptions.InternalCall)]
[return: MarshalAs(UnmanagedType.BStr)]
string GetColor([In] int x, [In] int y);
[DispId(28)]
[MethodImpl(MethodImplOptions.InternalCall)]
[return: MarshalAs(UnmanagedType.BStr)]
string GetColorBGR([In] int x, [In] int y);
[DispId(29)]
[MethodImpl(MethodImplOptions.InternalCall)]
[return: MarshalAs(UnmanagedType.BStr)]
string RGB2BGR([MarshalAs(UnmanagedType.BStr)] [In] string rgb_color);
[DispId(30)]
[MethodImpl(MethodImplOptions.InternalCall)]
[return: MarshalAs(UnmanagedType.BStr)]
string BGR2RGB([MarshalAs(UnmanagedType.BStr)] [In] string bgr_color);
[DispId(31)]
[MethodImpl(MethodImplOptions.InternalCall)]
int UnBindWindow();
[DispId(32)]
[MethodImpl(MethodImplOptions.InternalCall)]
int CmpColor([In] int x, [In] int y, [MarshalAs(UnmanagedType.BStr)] [In] string color, [In] double sim);
[DispId(33)]
[MethodImpl(MethodImplOptions.InternalCall)]
int ClientToScreen([In] int hwnd, [MarshalAs(UnmanagedType.Struct)] [In] [Out] ref object x, [MarshalAs(UnmanagedType.Struct)] [In] [Out] ref object y);
[DispId(34)]
[MethodImpl(MethodImplOptions.InternalCall)]
int ScreenToClient([In] int hwnd, [MarshalAs(UnmanagedType.Struct)] [In] [Out] ref object x, [MarshalAs(UnmanagedType.Struct)] [In] [Out] ref object y);
[DispId(35)]
[MethodImpl(MethodImplOptions.InternalCall)]
int ShowScrMsg([In] int x1, [In] int y1, [In] int x2, [In] int y2, [MarshalAs(UnmanagedType.BStr)] [In] string msg, [MarshalAs(UnmanagedType.BStr)] [In] string color);
[DispId(36)]
[MethodImpl(MethodImplOptions.InternalCall)]
int SetMinRowGap([In] int row_gap);
[DispId(37)]
[MethodImpl(MethodImplOptions.InternalCall)]
int SetMinColGap([In] int col_gap);
[DispId(38)]
[MethodImpl(MethodImplOptions.InternalCall)]
int FindColor([In] int x1, [In] int y1, [In] int x2, [In] int y2, [MarshalAs(UnmanagedType.BStr)] [In] string color, [In] double sim, [In] int dir, [MarshalAs(UnmanagedType.Struct)] out object x, [MarshalAs(UnmanagedType.Struct)] out object y);
[DispId(39)]
[MethodImpl(MethodImplOptions.InternalCall)]
[return: MarshalAs(UnmanagedType.BStr)]
string FindColorEx([In] int x1, [In] int y1, [In] int x2, [In] int y2, [MarshalAs(UnmanagedType.BStr)] [In] string color, [In] double sim, [In] int dir);
[DispId(40)]
[MethodImpl(MethodImplOptions.InternalCall)]
int SetWordLineHeight([In] int line_height);
[DispId(41)]
[MethodImpl(MethodImplOptions.InternalCall)]
int SetWordGap([In] int word_gap);
[DispId(42)]
[MethodImpl(MethodImplOptions.InternalCall)]
int SetRowGapNoDict([In] int row_gap);
[DispId(43)]
[MethodImpl(MethodImplOptions.InternalCall)]
int SetColGapNoDict([In] int col_gap);
[DispId(44)]
[MethodImpl(MethodImplOptions.InternalCall)]
int SetWordLineHeightNoDict([In] int line_height);
[DispId(45)]
[MethodImpl(MethodImplOptions.InternalCall)]
int SetWordGapNoDict([In] int word_gap);
[DispId(46)]
[MethodImpl(MethodImplOptions.InternalCall)]
int GetWordResultCount([MarshalAs(UnmanagedType.BStr)] [In] string str);
[DispId(47)]
[MethodImpl(MethodImplOptions.InternalCall)]
int GetWordResultPos([MarshalAs(UnmanagedType.BStr)] [In] string str, [In] int index, [MarshalAs(UnmanagedType.Struct)] out object x, [MarshalAs(UnmanagedType.Struct)] out object y);
[DispId(48)]
[MethodImpl(MethodImplOptions.InternalCall)]
[return: MarshalAs(UnmanagedType.BStr)]
string GetWordResultStr([MarshalAs(UnmanagedType.BStr)] [In] string str, [In] int index);
[DispId(49)]
[MethodImpl(MethodImplOptions.InternalCall)]
[return: MarshalAs(UnmanagedType.BStr)]
string GetWords([In] int x1, [In] int y1, [In] int x2, [In] int y2, [MarshalAs(UnmanagedType.BStr)] [In] string color, [In] double sim);
[DispId(50)]
[MethodImpl(MethodImplOptions.InternalCall)]
[return: MarshalAs(UnmanagedType.BStr)]
string GetWordsNoDict([In] int x1, [In] int y1, [In] int x2, [In] int y2, [MarshalAs(UnmanagedType.BStr)] [In] string color);
[DispId(51)]
[MethodImpl(MethodImplOptions.InternalCall)]
int SetShowErrorMsg([In] int show);
[DispId(52)]
[MethodImpl(MethodImplOptions.InternalCall)]
int GetClientSize([In] int hwnd, [MarshalAs(UnmanagedType.Struct)] out object width, [MarshalAs(UnmanagedType.Struct)] out object height);
[DispId(53)]
[MethodImpl(MethodImplOptions.InternalCall)]
int MoveWindow([In] int hwnd, [In] int x, [In] int y);
[DispId(54)]
[MethodImpl(MethodImplOptions.InternalCall)]
[return: MarshalAs(UnmanagedType.BStr)]
string GetColorHSV([In] int x, [In] int y);
[DispId(55)]
[MethodImpl(MethodImplOptions.InternalCall)]
[return: MarshalAs(UnmanagedType.BStr)]
string GetAveRGB([In] int x1, [In] int y1, [In] int x2, [In] int y2);
[DispId(56)]
[MethodImpl(MethodImplOptions.InternalCall)]
[return: MarshalAs(UnmanagedType.BStr)]
string GetAveHSV([In] int x1, [In] int y1, [In] int x2, [In] int y2);
[DispId(57)]
[MethodImpl(MethodImplOptions.InternalCall)]
int GetForegroundWindow();
[DispId(58)]
[MethodImpl(MethodImplOptions.InternalCall)]
int GetForegroundFocus();
[DispId(59)]
[MethodImpl(MethodImplOptions.InternalCall)]
int GetMousePointWindow();
[DispId(60)]
[MethodImpl(MethodImplOptions.InternalCall)]
int GetPointWindow([In] int x, [In] int y);
[DispId(61)]
[MethodImpl(MethodImplOptions.InternalCall)]
[return: MarshalAs(UnmanagedType.BStr)]
string EnumWindow([In] int parent, [MarshalAs(UnmanagedType.BStr)] [In] string title, [MarshalAs(UnmanagedType.BStr)] [In] string class_name, [In] int filter);
[DispId(62)]
[MethodImpl(MethodImplOptions.InternalCall)]
int GetWindowState([In] int hwnd, [In] int flag);
[DispId(63)]
[MethodImpl(MethodImplOptions.InternalCall)]
int GetWindow([In] int hwnd, [In] int flag);
[DispId(64)]
[MethodImpl(MethodImplOptions.InternalCall)]
int GetSpecialWindow([In] int flag);
[DispId(65)]
[MethodImpl(MethodImplOptions.InternalCall)]
int SetWindowText([In] int hwnd, [MarshalAs(UnmanagedType.BStr)] [In] string text);
[DispId(66)]
[MethodImpl(MethodImplOptions.InternalCall)]
int SetWindowSize([In] int hwnd, [In] int width, [In] int height);
[DispId(67)]
[MethodImpl(MethodImplOptions.InternalCall)]
int GetWindowRect([In] int hwnd, [MarshalAs(UnmanagedType.Struct)] out object x1, [MarshalAs(UnmanagedType.Struct)] out object y1, [MarshalAs(UnmanagedType.Struct)] out object x2, [MarshalAs(UnmanagedType.Struct)] out object y2);
[DispId(68)]
[MethodImpl(MethodImplOptions.InternalCall)]
[return: MarshalAs(UnmanagedType.BStr)]
string GetWindowTitle([In] int hwnd);
[DispId(69)]
[MethodImpl(MethodImplOptions.InternalCall)]
[return: MarshalAs(UnmanagedType.BStr)]
string GetWindowClass([In] int hwnd);
[DispId(70)]
[MethodImpl(MethodImplOptions.InternalCall)]
int SetWindowState([In] int hwnd, [In] int flag);
[DispId(71)]
[MethodImpl(MethodImplOptions.InternalCall)]
int CreateFoobarRect([In] int hwnd, [In] int x, [In] int y, [In] int w, [In] int h);
[DispId(72)]
[MethodImpl(MethodImplOptions.InternalCall)]
int CreateFoobarRoundRect([In] int hwnd, [In] int x, [In] int y, [In] int w, [In] int h, [In] int rw, [In] int rh);
[DispId(73)]
[MethodImpl(MethodImplOptions.InternalCall)]
int CreateFoobarEllipse([In] int hwnd, [In] int x, [In] int y, [In] int w, [In] int h);
[DispId(74)]
[MethodImpl(MethodImplOptions.InternalCall)]
int CreateFoobarCustom([In] int hwnd, [In] int x, [In] int y, [MarshalAs(UnmanagedType.BStr)] [In] string pic, [MarshalAs(UnmanagedType.BStr)] [In] string trans_color, [In] double sim);
[DispId(75)]
[MethodImpl(MethodImplOptions.InternalCall)]
int FoobarFillRect([In] int hwnd, [In] int x1, [In] int y1, [In] int x2, [In] int y2, [MarshalAs(UnmanagedType.BStr)] [In] string color);
[DispId(76)]
[MethodImpl(MethodImplOptions.InternalCall)]
int FoobarDrawText([In] int hwnd, [In] int x, [In] int y, [In] int w, [In] int h, [MarshalAs(UnmanagedType.BStr)] [In] string text, [MarshalAs(UnmanagedType.BStr)] [In] string color, [In] int align);
[DispId(77)]
[MethodImpl(MethodImplOptions.InternalCall)]
int FoobarDrawPic([In] int hwnd, [In] int x, [In] int y, [MarshalAs(UnmanagedType.BStr)] [In] string pic, [MarshalAs(UnmanagedType.BStr)] [In] string trans_color);
[DispId(78)]
[MethodImpl(MethodImplOptions.InternalCall)]
int FoobarUpdate([In] int hwnd);
[DispId(79)]
[MethodImpl(MethodImplOptions.InternalCall)]
int FoobarLock([In] int hwnd);
[DispId(80)]
[MethodImpl(MethodImplOptions.InternalCall)]
int FoobarUnlock([In] int hwnd);
[DispId(81)]
[MethodImpl(MethodImplOptions.InternalCall)]
int FoobarSetFont([In] int hwnd, [MarshalAs(UnmanagedType.BStr)] [In] string font_name, [In] int size, [In] int flag);
[DispId(82)]
[MethodImpl(MethodImplOptions.InternalCall)]
int FoobarTextRect([In] int hwnd, [In] int x, [In] int y, [In] int w, [In] int h);
[DispId(83)]
[MethodImpl(MethodImplOptions.InternalCall)]
int FoobarPrintText([In] int hwnd, [MarshalAs(UnmanagedType.BStr)] [In] string text, [MarshalAs(UnmanagedType.BStr)] [In] string color);
[DispId(84)]
[MethodImpl(MethodImplOptions.InternalCall)]
int FoobarClearText([In] int hwnd);
[DispId(85)]
[MethodImpl(MethodImplOptions.InternalCall)]
int FoobarTextLineGap([In] int hwnd, [In] int gap);
[DispId(86)]
[MethodImpl(MethodImplOptions.InternalCall)]
int Play([MarshalAs(UnmanagedType.BStr)] [In] string file);
[DispId(87)]
[MethodImpl(MethodImplOptions.InternalCall)]
int FaqCapture([In] int x1, [In] int y1, [In] int x2, [In] int y2, [In] int quality, [In] int delay, [In] int time);
[DispId(88)]
[MethodImpl(MethodImplOptions.InternalCall)]
int FaqRelease([In] int handle);
[DispId(89)]
[MethodImpl(MethodImplOptions.InternalCall)]
[return: MarshalAs(UnmanagedType.BStr)]
string FaqSend([MarshalAs(UnmanagedType.BStr)] [In] string server, [In] int handle, [In] int request_type, [In] int time_out);
[DispId(90)]
[MethodImpl(MethodImplOptions.InternalCall)]
int Beep([In] int fre, [In] int delay);
[DispId(91)]
[MethodImpl(MethodImplOptions.InternalCall)]
int FoobarClose([In] int hwnd);
[DispId(92)]
[MethodImpl(MethodImplOptions.InternalCall)]
int MoveDD([In] int dx, [In] int dy);
[DispId(93)]
[MethodImpl(MethodImplOptions.InternalCall)]
int FaqGetSize([In] int handle);
[DispId(94)]
[MethodImpl(MethodImplOptions.InternalCall)]
int LoadPic([MarshalAs(UnmanagedType.BStr)] [In] string pic_name);
[DispId(95)]
[MethodImpl(MethodImplOptions.InternalCall)]
int FreePic([MarshalAs(UnmanagedType.BStr)] [In] string pic_name);
[DispId(96)]
[MethodImpl(MethodImplOptions.InternalCall)]
int GetScreenData([In] int x1, [In] int y1, [In] int x2, [In] int y2);
[DispId(97)]
[MethodImpl(MethodImplOptions.InternalCall)]
int FreeScreenData([In] int handle);
[DispId(98)]
[MethodImpl(MethodImplOptions.InternalCall)]
int WheelUp();
[DispId(99)]
[MethodImpl(MethodImplOptions.InternalCall)]
int WheelDown();
[DispId(100)]
[MethodImpl(MethodImplOptions.InternalCall)]
int SetMouseDelay([MarshalAs(UnmanagedType.BStr)] [In] string type, [In] int delay);
[DispId(101)]
[MethodImpl(MethodImplOptions.InternalCall)]
int SetKeypadDelay([MarshalAs(UnmanagedType.BStr)] [In] string type, [In] int delay);
[DispId(102)]
[MethodImpl(MethodImplOptions.InternalCall)]
[return: MarshalAs(UnmanagedType.BStr)]
string GetEnv([In] int index, [MarshalAs(UnmanagedType.BStr)] [In] string name);
[DispId(103)]
[MethodImpl(MethodImplOptions.InternalCall)]
int SetEnv([In] int index, [MarshalAs(UnmanagedType.BStr)] [In] string name, [MarshalAs(UnmanagedType.BStr)] [In] string value);
[DispId(104)]
[MethodImpl(MethodImplOptions.InternalCall)]
int SendString([In] int hwnd, [MarshalAs(UnmanagedType.BStr)] [In] string str);
[DispId(105)]
[MethodImpl(MethodImplOptions.InternalCall)]
int DelEnv([In] int index, [MarshalAs(UnmanagedType.BStr)] [In] string name);
[DispId(106)]
[MethodImpl(MethodImplOptions.InternalCall)]
[return: MarshalAs(UnmanagedType.BStr)]
string GetPath();
[DispId(107)]
[MethodImpl(MethodImplOptions.InternalCall)]
int SetDict([In] int index, [MarshalAs(UnmanagedType.BStr)] [In] string dict_name);
[DispId(108)]
[MethodImpl(MethodImplOptions.InternalCall)]
int FindPic([In] int x1, [In] int y1, [In] int x2, [In] int y2, [MarshalAs(UnmanagedType.BStr)] [In] string pic_name, [MarshalAs(UnmanagedType.BStr)] [In] string delta_color, [In] double sim, [In] int dir, [MarshalAs(UnmanagedType.Struct)] out object x, [MarshalAs(UnmanagedType.Struct)] out object y);
[DispId(109)]
[MethodImpl(MethodImplOptions.InternalCall)]
[return: MarshalAs(UnmanagedType.BStr)]
string FindPicEx([In] int x1, [In] int y1, [In] int x2, [In] int y2, [MarshalAs(UnmanagedType.BStr)] [In] string pic_name, [MarshalAs(UnmanagedType.BStr)] [In] string delta_color, [In] double sim, [In] int dir);
[DispId(110)]
[MethodImpl(MethodImplOptions.InternalCall)]
int SetClientSize([In] int hwnd, [In] int width, [In] int height);
[DispId(111)]
[MethodImpl(MethodImplOptions.InternalCall)]
int ReadInt([In] int hwnd, [MarshalAs(UnmanagedType.BStr)] [In] string addr, [In] int type);
[DispId(112)]
[MethodImpl(MethodImplOptions.InternalCall)]
float ReadFloat([In] int hwnd, [MarshalAs(UnmanagedType.BStr)] [In] string addr);
[DispId(113)]
[MethodImpl(MethodImplOptions.InternalCall)]
double ReadDouble([In] int hwnd, [MarshalAs(UnmanagedType.BStr)] [In] string addr);
[DispId(114)]
[MethodImpl(MethodImplOptions.InternalCall)]
[return: MarshalAs(UnmanagedType.BStr)]
string FindInt([In] int hwnd, [MarshalAs(UnmanagedType.BStr)] [In] string addr_range, [In] int int_value_min, [In] int int_value_max, [In] int type);
[DispId(115)]
[MethodImpl(MethodImplOptions.InternalCall)]
[return: MarshalAs(UnmanagedType.BStr)]
string FindFloat([In] int hwnd, [MarshalAs(UnmanagedType.BStr)] [In] string addr_range, [In] float float_value_min, [In] float float_value_max);
[DispId(116)]
[MethodImpl(MethodImplOptions.InternalCall)]
[return: MarshalAs(UnmanagedType.BStr)]
string FindDouble([In] int hwnd, [MarshalAs(UnmanagedType.BStr)] [In] string addr_range, [In] double double_value_min, [In] double double_value_max);
[DispId(117)]
[MethodImpl(MethodImplOptions.InternalCall)]
[return: MarshalAs(UnmanagedType.BStr)]
string FindString([In] int hwnd, [MarshalAs(UnmanagedType.BStr)] [In] string addr_range, [MarshalAs(UnmanagedType.BStr)] [In] string string_value, [In] int type);
[DispId(118)]
[MethodImpl(MethodImplOptions.InternalCall)]
int GetModuleBaseAddr([In] int hwnd, [MarshalAs(UnmanagedType.BStr)] [In] string module_name);
[DispId(119)]
[MethodImpl(MethodImplOptions.InternalCall)]
[return: MarshalAs(UnmanagedType.BStr)]
string MoveToEx([In] int x, [In] int y, [In] int w, [In] int h);
[DispId(120)]
[MethodImpl(MethodImplOptions.InternalCall)]
[return: MarshalAs(UnmanagedType.BStr)]
string MatchPicName([MarshalAs(UnmanagedType.BStr)] [In] string pic_name);
[DispId(121)]
[MethodImpl(MethodImplOptions.InternalCall)]
int AddDict([In] int index, [MarshalAs(UnmanagedType.BStr)] [In] string dict_info);
[DispId(122)]
[MethodImpl(MethodImplOptions.InternalCall)]
int EnterCri();
[DispId(123)]
[MethodImpl(MethodImplOptions.InternalCall)]
int LeaveCri();
[DispId(124)]
[MethodImpl(MethodImplOptions.InternalCall)]
int WriteInt([In] int hwnd, [MarshalAs(UnmanagedType.BStr)] [In] string addr, [In] int type, [In] int v);
[DispId(125)]
[MethodImpl(MethodImplOptions.InternalCall)]
int WriteFloat([In] int hwnd, [MarshalAs(UnmanagedType.BStr)] [In] string addr, [In] float v);
[DispId(126)]
[MethodImpl(MethodImplOptions.InternalCall)]
int WriteDouble([In] int hwnd, [MarshalAs(UnmanagedType.BStr)] [In] string addr, [In] double v);