求助一下vb.net调用vb 大漠调用外部图片插件并且多线程

vb.net  怎么用大漠插件啊?
我的图书馆
vb.net  怎么用大漠插件啊?
选择大漠 dm.dll
可以在最近处看到刚才的添加
代码编写,导入dm 大漠插件
弹出大漠对象版本,几行代码,都有解释
TA的推荐TA的最新馆藏[转]&[转]&[转]&[转]&[转]&[转]&[转]&[转]&
喜欢该文的人也喜欢你的位置:
.NET下最简单的调用大漠插件方法 VB.NET,C#均适用
16:21:37 |
来源: 按键精灵资源站
大漠是个标准的COM组件,所以任何语言都可以调用
不管哪种调用方式都要先对大漠插件进行注册
首先直接运行一段命令行语句 “Regsvr32 dm.dll”
.NET里面可以直接引用,引用方法,添加引用--COM--找到DM,双击即可
引用好之后,就可以直接创建大漠类的实例了
VB.NET的声明方法
Public dm As New Dm.dmsoft
这是一种最简单的办法,写程序的时候,直接DM.方法名 (有自动提示)就可以调用大漠的方法了,不过这个办法引用的大漠插件有BUG,在多线程运行的时候,程序直接崩溃,不知什么原因。
所以,通常采用第二个办法
首先,还是注册大漠插件,“Regsvr32 dm.dll”
然后,定义一个OBJECT的类型
Public dm As Object
接着创建大漠插件的对象
dm=CreatObject(&dm.dmsoft&)
这样也可以直接调用大漠的命令,不过没有自动提示,但只要方法名和参数是正确的就可以了,多线程下不会出错。
在程序的编写中,建议写代码的时候直接引用,这样可以提高编码效率,在编译的时候,把直接引用转换成第二个办法即可。
我写的是VB.NET的例子,C#的话转换成C#的语法即可,一样的方法
另外,在.NET环境下,由于大漠属于非托管代码,.NET不会自动释放和销毁大漠对象,程序运行久了,内存垃圾会越来越多,创建一个大漠对象,大漠就申请了10M的内存空间(作者太变态了),程序运行久了,比如做个10开的游戏辅助软件,占用内存可能达到几百兆。所以在大漠对象不使用的时候,要在NET里对他手动释放。
释放方法:
System.Runtime.InteropServices.Marshal.ReleaseComObject(dm)
dm = Nothing
GC.Collect()
强行把大漠插件从内存里清扫出去,这样基本上就差不多了,程序运行稳定C#调用大漠插件的方法和实例 - iackjee - 博客园
随笔 - 265, 文章 - 9, 评论 - 5, 引用 - 0
大漠插件是一个很不错的东西,在按键精灵和易语言里面用得很多,可以后台找图找字,写游戏自动脚本用得特别多。前面写一个微信的自动脚本,查了一些资料,易语言不太熟悉,按键精灵功能上可能不好实现,就找了些资料,大漠插件是可以用在C#里的调用的。这里分享下方法。一、引用Ddm.dll
.NET里面可以直接引用,引用方法,添加引用--COM--找到DM,双击即可
二、注册大漠插件
//这是注册DLL到系统的一个方法,注册大漠则调用 AutoRegCom("regsvr32 -s dm.dll");
static string AutoRegCom(string strCmd)
Process myProcess = new Process();
ProcessStartInfo myProcessStartInfo = new ProcessStartInfo("cmd.exe");
myProcessStartInfo.UseShellExecute = false;
myProcessStartInfo.CreateNoWindow = true;
myProcessStartInfo.RedirectStandardOutput = true;
myProcess.StartInfo = myProcessStartI
myProcessStartInfo.Arguments = "/c " + strC
myProcess.Start();
StreamReader myStreamReader = myProcess.StandardO
rInfo = myStreamReader.ReadToEnd();
myProcess.Close();
rInfo = strCmd + "\r\n" + rI
catch (Exception ex)
return ex.M
三、实例化大漠对象
Dm.dmsoft dm = new Dm.dmsoft();
四、调用大漠的方法
直接通过实例化的对象dm调用,如dm.MoveTo(30, 30);
完整代码: 窗体上放一个按钮,点击按钮,调用大漠插件将鼠标移动到(30,30)
using System.Collections.G
using System.ComponentM
using System.D
using System.D
using System.L
using System.T
using System.Windows.F
using System.D
using System.IO;
namespace Player
public partial class Player : Form
public Player()
InitializeComponent();
AutoRegCom("regsvr32 -s dm.dll");
private void button1_Click(object sender, EventArgs e)
Dm.dmsoft dm = new Dm.dmsoft();
dm.MoveTo(30, 30);
static string AutoRegCom(string strCmd)
Process myProcess = new Process();
ProcessStartInfo myProcessStartInfo = new ProcessStartInfo("cmd.exe");
myProcessStartInfo.UseShellExecute = false;
myProcessStartInfo.CreateNoWindow = true;
myProcessStartInfo.RedirectStandardOutput = true;
myProcess.StartInfo = myProcessStartI
myProcessStartInfo.Arguments = "/c " + strC
myProcess.Start();
StreamReader myStreamReader = myProcess.StandardO
rInfo = myStreamReader.ReadToEnd();
myProcess.Close();
rInfo = strCmd + "\r\n" + rI
catch (Exception ex)
return ex.M查看: 4542|回复: 3
求C++调用大漠插件 多线程例子
阅读权限90
&&能解决的话&&多谢帮忙 , 要RMB 直接M 我&&Q
发帖求助前要善用【】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请编辑帖子并把分类改成【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】和【驿站币】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
阅读权限100
什么情况。。。。。。。。。。。
发帖求助前要善用【】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请编辑帖子并把分类改成【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】和【驿站币】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
阅读权限50
高级会员, 积分 752, 距离下一级还需 48 积分
你有大漠插件吗?& &发我玩玩& &
发帖求助前要善用【】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请编辑帖子并把分类改成【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】和【驿站币】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
阅读权限90
发帖求助前要善用【】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请编辑帖子并把分类改成【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【热心】和【驿站币】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
工作时间:8:00-18:00
客服热线:
官方微信扫一扫
VC驿站微信公众号cctry2009
Powered by Discuz! X3.4大漠各个插件说明[指南]doc下载_爱问共享资料
大漠各个插件说明[指南].doc
大漠各个插件说明[指南].doc
大漠各个插件说明[指南].doc
简介:本文档为《大漠各个插件说明[指南]doc》,可适用于人力资源领域,主题内容包含大漠各个插件说明指南大漠各个插件说明无返回值的不能带括号,或者说无括号不能带返回值,例如dmFindStr,,,,"长安","aaaaa",,int符等。
侵权或盗版
*若权利人发现爱问平台上用户上传内容侵犯了其作品的信息网络传播权等合法权益时,请按照平台要求书面通知爱问!
赌博犯罪类
在此可输入您对该资料的评论~
添加成功至
资料评价:

我要回帖

更多关于 vb调用大漠插件 的文章

 

随机推荐