使用C# 多线程多窗口同时调用大漠

本文介绍了大漠控件7.1919版本在多线程环境中的使用注意事项,强调了COM架构的STA和MTA线程模型的区别,建议使用MTA以提高效率。同时,作者警告避免使用系统提供的暂停和强制结束线程接口,因为可能导致系统崩溃,提出了替代方案以确保线程安全。通过示例代码,帮助用户更好地理解和处理多线程问题。

1.我使用的大漠控件版本是7.1919版本

2.多线程多窗口调用的时候经常会出现问题,所以做了一个例子作为模板,以后大家可以根据情况在代码上修改即可



 * 写这个例子的原因是看到了很多用户对多线程的处理,处于一知半解的状态
 * 各种奇葩写法层出不穷. 导致的问题也是稀奇古怪
 * 卡死,崩溃简直是家常便饭

 * 为了让用户能更深入的了解多线程的控制和处理,我要在这里写一些原理性的东西
 * 包括插件的设计思想

 * 首先说插件
 * 插件目前是用COM架构设计的,目前的是版本同时支持sta和mta两种线程模型
 * 简单来说,sta就是单线程模型,mta是多线程模型
 * 对于sta来说,所有的com调用(比如你调用了插件的某个接口),都被序列化到某个线程(创建对象的那个线程)内去执行,而不一定在你的调用线程执行
 * 对于mta来说,所有的com调用,都在你的调用线程执行,所以mta的调用效率是最高的.
 * 那么什么时候决定com的线程模型呢? 其实是在对象创建的那个时候决定的
 * 当对象创建时,所在的线程是sta模型,那么这个对象就是sta模型了,无论它在哪个线程里调用,都必定序列化
 * 相反,如果创建时,所在线程是mta模型,那么这个对象就算实在sta模型的线程里调用,它也一定不会被序列化.
 * 所以,我们如果想让某个COM对象以sta模型运行,那么只需要让它在sta模型的线程内创建就好了. 相反mta也如此

 * 对于实际的使用中,我还是建议统统用mta模型。 因为考虑到我们会在线程外去调用接口,为了效率考虑,我们统一使用mta
 * 另外插件设计的所有接口,对于同个对象而言,不是多线程安全的.(也就是同个对象的接口,不能同时在多个线程内调用,会引发崩溃)
 * 在实际使用中,一定要时刻注意这一点. 相反的,如果不是同个对象,那么是多线程安全的.

 *

文字方面 1. 所有文字识别接口都支持后台gdi 后台gdi2 后台dx 后台dx2 后台dx3 以及前台normal 2. 支持RGB HSV颜色识别 3. 支持RGB HSV差色识别 4. 支持多种颜色混合识别(最多10种) 5. 支持连体字识别 6. 支持背景色识别 7. 支持点阵模糊识别(防杂点干扰) 8. 支持查找指定字符串在屏幕的坐标 9. 支持查找指定字符串在屏幕上的所有坐标 10. 支持在未知文字的情况下进行词组识别 11. 支持在没有字库的情况下,进行词组范围识别 12. 支持多字库,最多10个字库。方便针对不同的情况制作字库. 13. 完全兼容91OCR字库(txt字库,mdb不支持) 14. 支持字库自定义加密解密 15. 支持识别指定图片中的文字 16. 支持在代码中添加字库 图色方面 1. 所有图色接口都支持后台gdi 后台gdi2 后台dx 后台dx2 后台dx3 以及前台normal 2. 支持颜色查找,多种颜色查找,并可指定搜索的方向以及相似度 3. 支持图形查找,多个图形查找,并可指定搜索的方向以及相似度 4. 支持直接获取某点的颜色(RGB,HSV) 5. 支持直接对某点的颜色进行比较,可指定相似度 6. 可直接对任意区域进行截图,并保存为bmp(24位色) 7. 可获取某范围的RGB和HSV颜色均值 8. 支持图片透明色 9. 支持多图查找 10. 支持直接获取图像数组,方便二次开发 11. 支持多点找色 键鼠方面 1. 所有键鼠接口都支持windows消息模拟,dx以及前台 2. 前台完全模拟,功能和按键自带的完全一样 3. 后台windows消息模拟(类似于按键自带的后台键鼠) 4. dx键盘几乎支持所有游戏后台组合键.(首创) 5. 后台dx (首创,支持大型的3D以及2D游戏键鼠的模拟) 后台方面 1. 两个函数,搞定前后台的切换,非常简单快捷. 窗口方面 1. 支持任意绘制的信息提示窗口,可以随着游戏窗口的移动而移动 2. 信息提示窗口可以鼠标拖动,更加方便快捷 3. 支持获取通过正常手段获取不到的窗口句柄,比如QQ系列游戏 4. 支持枚举窗口 5. 支持获取窗口各种状态 6. 支持对窗口进行各种操作,关闭,最小化等等 内存方面 1. 支持CE格式的内存读取 2. 支持各种数据类型的搜索,以及多次搜索(类似CE) 3. 强力内存接口,按键自带的读不到,可以试试这个 4. 强力的内存写接口(简单游版本不支持) 汇编方面 汇编方面(简单游版本不支持) 支持MASM语法的汇编语句,支持本进程以及目标进程的汇编代码嵌入执行(俗语Call) 2. 支持机器码和MASM语句的互转 答题器 1. 支持前后台的截图发送到服务端 2. 支持前后台的截取动画发送到服务端 5颜色格式 编辑 颜色格式 1.RGB模式 RRGGBB-偏色RR偏色GG偏色BB适用于颜色偏差较大的场合 2.HSV模式 H.S.V-偏色H.偏色S.偏色V 适用于颜色接近的场合 例如,RGB模式: 9f2e3f-000000 表示颜色为9f2e3f,RGB的偏色都为0 9f2e3f-020202 表示颜色为9f2e3f,RGB的偏色都为02 HSV模式: 20.30.20-0.0.0 表示颜色为20.30.20,HSV的偏色都为0 20.30.20-0.0.20 表示颜色为20.30.20,HSV的偏色为0 0 20 6工具部分 编辑 字库制作工具的使用,主要分为2大功能模块 1. 一个是抓图,制作自定义字库,任意形状都可以 2. 第二个是根据系统中的字体,来制作字库
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值